七叶笔记 » java编程 » java判断数组元素是否重复

java判断数组元素是否重复

java判断数组元素是否重复:

一、先对数组去重,然后通过判断数组长度即可判断数组元素是否重复。

/**  * 判断数组内有无重复元素  * @param args  * @return true 有重复 | false 无重复  */  public static boolean hasRepeat(Object[] args){      Set<Object> tempSet = new HashSet<Object>();      for (int i = 0; i < args.length; i++) {          tempSet.add(args[i]);      }      if(args.length == tempSet.size()){          return false;      }else{          return true;      }  }

二、通过双重循环依次比较数组中元素是否相等判断元素是否重复

1、两个for循环,依次判断是否相等,或先调用Arrays.sort(),然后再用Arrays.binarysearch()比较

2、把数组转化成一个用特殊字符分隔的字符串,然后用正则表达式里的\1,也就是第一个匹配结果,此方法效率较高。

public void testMethod(){     int []b=new int[]{1,3,5,6,2,4,20,9};     boolean flag=true;     for(int i=0;i<b.length-1;i++){      for(int j=i+1;j<b.length;j++){ //注意FOR嵌套的用法       if(b[i]==b[j]){        flag=false;        //break;       }else{        flag=true;        //break;       }      }          }     if(flag){      System.out.println("不重复");     }else{      System.out.println("重复");     }  }

更多java知识请关注java基础教程。

相关文章