首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Eclipse开发 >

java消除重复的有关问题

2012-12-16 
java消除重复的问题比如输入 1 2 3 2 1 6 3 4 5 2输出 1 2 3 6 4 5public static int[] eliminateDuplicat

java消除重复的问题
比如输入 1 2 3 2 1 6 3 4 5 2
输出 1 2 3 6 4 5
public static int[] eliminateDuplicates(int[] numbers)
{

}
这里面的函数式要如何写的?  小弟初学者  很是迷茫。。。
[解决办法]
放到Set集合里!
[解决办法]
public class test2 
{
public static void main(String[] args) throws IOException{
int[] numbers={1,2,3,2,1,6,3,4,5,2};
int[] newAAA=eliminateDuplicates(numbers);


for(int i=0;i<newAAA.length;i++){
System.out.println(newAAA[i]);
}
}

public static int[] eliminateDuplicates(int[] numbers)
{
HashSet hs=new HashSet();
for(int i=0;i<numbers.length;i++){
hs.add(numbers[i]);
}

int[] aaa=new int[hs.size()];
Iterator<Integer> iterator=hs.iterator();
int n=0;
while(iterator.hasNext()){
aaa[n]=iterator.next();
n++;
}
return aaa;

}
}
[解决办法]

引用:
public class test2 
{
public static void main(String[] args) throws IOException{
int[] numbers={1,2,3,2,1,6,3,4,5,2};
int[] newAAA=eliminateDuplicates(numbers);


for(int i=0;i<newAAA.length;i……

那个。。是需要自己从键盘动态输入数字的   然后不需要排序  。。。
[解决办法]
import java.util.LinkedHashSet;
import java.util.Scanner;

public class EliminateCase {
public static void main(String[] args) {
LinkedHashSet<Object> input = new LinkedHashSet<Object>();
Scanner sc = new Scanner(System.in);
System.out.println("输入数组中的元素,最后以非数字字符结束输入:");
while(sc.hasNextInt()){
input.add(sc.nextInt());
}
System.out.println(input);
sc.close();
}
}

热点排行