您的位置:首页 > 其它

判断数组中是否存在重复元素

2017-09-02 11:16 465 查看
以下的方法包含了JS方法和JAVA方法

方法1:

int[] n = {1,2,3,1,0};
boolean flag = true;   //假设不重复
for(int i = 0;i < n.length – 1;i++){ //循环开始元素
for(int j = i + 1;j < n.length;j++){ //循环后续所有元素
//如果相等,则重复
if(n[i] == n[j]){
flag = false; //设置标志变量为重复
break;      //结束循环
}
}
}
//判断标志变量
if(flag){
System.out.println(“不重复”);
}else{
System.out.println(“重复”);
}


方法2:

可以使用数组的indexOf()方法,如果返回值为-1则说明不存在,如果返回值为大于-1的整数,则说明存在。例如:
var arr = [1,2,3];
arr.indexOf(1);    // 返回0
arr.indexOf(5);    // 返回-1
附:返回值为数组中的最靠前元素在数组的位置


var s = ary.join(",")+",";

for(var i=0;i<ary.length;i++) {
    if(s.replace(ary[i]+",","").indexOf(ary[i]+",")>-1) {
    alert("数组中有重复元素:" + ary[i]);
    break;
  }
}


方法3:

var ary = new Array("111","22","33","111");
var nary=ary.sort();
for(var i=0;i<ary.length;i++){
  if (nary[i]==nary[i+1]){
  alert("数组重复内容:"+nary[i]);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: