作业的问题。
一个一维数组,长度已限定,比如int[] a=new int[10],我建立一系列方法对数组内的元素按照一定的规则进行更改,得到的最终数组是各个元素都相等的,即a[0]==a[1]==a[2]==……==a[9]。现在要输出每次变换后的数组。
问题就是,如何判断循环的次数???我如何知道在第几次循环后,数组才能达到我的要求?因为每次变换都要输出一次,最后一次输出应该是各项相等的。
我本来想用while,但是条件里我不会写。。。
如何判断?如何去写?
[code="java"]
int[] xx =new int[]{1,1,1,1};
boolean jj=true;
for(int i=0;i<xx.length;i++){
int z= i+1;
if(xx[i]!=xx[z]){
jj=false;
break;
}
if(i+1+1==xx.length){
break;
}
}
[/code]
我想到有一个土办法可以实现之,
Map map = new HashMap();
//拿着数组的值当作key值去put这个map
for(arrays as obj){
map.put(obj,obj);
}
if(map.size==1){
//数组所有元素相等
}else if(map.size>1){
//有不等的情况
}