java数组中判断是否有相同的元素

Python08

java数组中判断是否有相同的元素,第1张

//用于存放数组中出现相同的元素Setset=newHashSet()//写一个方法把数组和set作为参数传过去publicbooleancompare(String[]strs,Setset){booleanresult=false//从第一个元素开始比较元素是不是有相同的出现for(inti=0i<strs.lengthi++){for(intj=i+1j<strs.lengthj++){//如果元素相同,保存到set中if(strs[i].equals(strs[j])){set.add(strs[i])result=true}}}returnresult}set中保存的就是出现相同的元素

使用一个临时list,借助list.contains判断当前数组的值是否存在于list中,如果不存在则加入到list中,如果存在则记录出来。有点像把一个篮子中的桌球放到另一个空篮子中,如果篮子里面已经有的就不要再放进去了,没有的,一个个放进去。说到底就是个遍历和存在性判断问题。

public static void main(String[] args) {

  int[] arr = { 1, 2, 4, 3, 3, 2, 5, 4, 5, 56, 3, 3, 4, 5454, 3, 5, 4, 5,

    45, 4, 55, 4, 5, 4, 54, }

  System.out.println("请输入一个整数:")

  Scanner input = new Scanner(System.in)

  int num = input.nextInt()

  int count = 0

  for (int i = 0 i < arr.length i++) {

   if (arr[i] == num) {

    count++

   }

  }

  System.out.printf("num重复了%s次",count+"")

 }