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基礎教程。
以上是java判斷數組元素是否重複的詳細內容。更多資訊請關注PHP中文網其他相關文章!