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推断数组元素是不是反复的细致内容,更多请关注ki4网别的相干文章!