假设有两个数组a[],b[],数组元素已知,我想得到a在b中没有的元素,找到一个就可以,该怎么实现?
我老是在退出循环的时候出现异常,代码如下:(我的是4个数组,22分组)
for(int p=0;p<as4.length;p++){
for (i = 0; i < temp1.length; i++) {
if (!(as4[p].equals(temp1[i]) &&
as5[p].equals(temp2[i]))) {
if (i == temp1.length - 1) {
s4 = as4[p];
s5 = as5[p];
p = as4.length;
}
} else {
if (p == as4.length - 1) {
sign = false; }
break;
}
}
}
我老是在退出循环的时候出现异常,代码如下:(我的是4个数组,22分组)
for(int p=0;p<as4.length;p++){
for (i = 0; i < temp1.length; i++) {
if (!(as4[p].equals(temp1[i]) &&
as5[p].equals(temp2[i]))) {
if (i == temp1.length - 1) {
s4 = as4[p];
s5 = as5[p];
p = as4.length;
}
} else {
if (p == as4.length - 1) {
sign = false; }
break;
}
}
}
解决方案 »
- 关于构造器的两点总结
- java 扫雷游戏中‘双键探雷’的使用?SOS......
- jcreator环境下的事件监听有问题,帮忙查错
- 请教:鼠标选中table的某行或多行时,通过渲染器来设置单行或多行的颜色
- dbswing 中 Database+QueryDataSet+JdbComboBox
- 解析HTML文件
- JDK有没有中文版本啊,英语不好?
- 妹妹的20个作业之5
- !!!100分求解一个很简单的问题,在线等候!急用!谢谢!
- 关于文件删除重建!
- 我想在一个程序里面创建30多个线程,这样会不会很影响效率啊?
- Hiberate3 中<sql-insert>, <sql-delete>, and <sql-update>如何在java中调用?
使用return
public class Domo { /**
* @param args
*/
public void GetDifferent(Object [] a,Object[] b)
{
Object temp;
System.out.print("数组a中的元素为:");
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
System.out.print("\n数组b中的元素为:");
for(int i=0;i<b.length;i++){
System.out.print(b[i]+" ");
}
System.out.print("\n数组a在b中没有的元素为:");
for(int i=0;i<a.length;i++){
temp =a[i];
int j=0;
for(;j<b.length;j++){
if(temp.equals(b[j])){
break;
}
}
if(j==b.length){
System.out.print(temp.toString()+" ");
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Object [] a ={1,2,3,4,5};
Object [] b ={1,2,4,6};
new Domo().GetDifferent(a, b);
}}
for(int j = 0; j < bs.length; j++){
if(as[i].equals(bs[j]){
System.out.println("element at "+i+" in a is existing at "+j+" in b");
return;
}
}
}
boolean found = false;
for(int j = 0; j < bs.length; j++){
found = as[i].equals(bs[j]);
if(found)
break;
}
if(!found){
return as[i];
}
}
}
把b放入Map ,
然后对a循环,
如果Map不包含当前a的元素,则直接返回这个元素,没有找到返回null即可。