java数组重复的元素
⑴ java中怎么找出数组中重复的数并去除
java中找出数组中重复的数并去除的代码如下:
publicstaticvoidtestA(){
String[]str={"Java","C++","Php","C#","Python","C++","Java"};
for(StringelementA:str){
System.out.print(elementA+"");
}
List<String>list=newArrayList<String>();
for(inti=0;i<str.length;i++){
if(!list.contains(str[i])){
list.add(str[i]);
}
}
System.out.println();
String[]newStr=list.toArray(newString[1]);//返回一个包含所有对象的指定类型的数组
for(StringelementB:newStr){
System.out.print(elementB+"");
}
System.out.println();
}
⑵ 用java编写 在两个数组里面 找出相同的元素 并输出
有两个数组,需要找出这两个数组之间相同的元素。
package cn.luxh.jpa.test;import java.util.HashSet;import java.util.Set;import org.junit.Test;public class ArrayTest {
/**
* 找出两个数组中相同的元素
* @param array1
* @param array2
* @return 返回相同的元素
*/
public Set<Integer> findSameElementIn2Arrays(Integer[] array1,Integer[] array2) {
Set<Integer> sameElementSet = new HashSet<Integer>();//用来存放两个数组中相同的元素
Set<Integer> tempSet = new HashSet<Integer>();//用来存放数组1中的元素(广州达内)
for(int i=0;i<array1.length;i++) {
tempSet.add(array1[i]);//把数组1中的元素放到Set中,可以去除重复的元素
}
for(int j=0;j<array2.length;j++) {
//把数组2中的元素添加到tempSet中
//如果tempSet中已存在相同的元素,则tempSet.add(array2[j])返回false
if(!tempSet.add(array2[j])) {
//返回false,说明当前元素是两个数组中相同的元
sameElementSet.add(array2[j]);
}
}
return sameElementSet;
}
@Test
public void testFindSameElementIn2Arrays(){
Integer[] array1 = {1,2,3,4,1,2,4,6,7,8,10,22,33};
Integer[] array2 = {1,2,3,4,1,2,4,6,7,8,10,22,33,55,66,77,88,99};
Set<Integer> sameElementSet = findSameElementIn2Arrays(array1,array2);
for(Integer i : sameElementSet) {
System.out.println(i);
}
}}
⑶ java怎么判断数组中有重复的元素
1、写两个for循环,外层for循环每取出一个值,都和内层for循环的值做比较,出现两次及以上相同的情况,即有重复元素。当然这种效率比较低。
2、写两个for循环,外层for循环取第一个值的时候,和内层循环的第二个值及之后的值比较;外层for循环取第二个值的时候,和内层循环的第三个值及之后的值比较……
以此类推,出现一次及以上相同的情况,即有重复元素。
过程就是如此,代码自己实现吧!
⑷ java 数组如何去掉重复元素
理论上是可以的,但是太复杂了,借助于集合更好一些
⑸ java 判断一个数组中是否有重复的元素
使用一个临时list,借助list.contains判断当前数组的值是否存在于list中,如果不存在则加入到list中,如果存在则记录出来。有点像把一个篮子中的桌球放到另一个空篮子中,如果篮子里面已经有的就不要再放进去了,没有的,一个个放进去。说到底就是个遍历和存在性判断问题。