改java编写的一个程序,急用,有空者帮帮忙,谢谢。题目如下

来源:百度知道 编辑:UC知道 时间:2024/06/15 19:19:48
编写一个程序,读入10个数并显示其中互不相同的数(即一个数多次出现,仅显示一次)。提示:读入一个数,如果他是一个新数,则把他存储在数组中:如果数组中已有该数,则把他丢弃。输入结束后,数组中的数都是不同的数。
import javax.swing.JOptionPane;
public class jjj{
public static void main(String[] args){
String output="";
int TOTALNUMBER=10;
int[] number=new int[TOTALNUMBER];
for(int i=0;i<number.length;i++){
String numString=JOptionPane.showInputDialog(
"Enter a number:");
number[i]=Integer.parseInt(numString);
}

for(int i=0;i<number.length;i++){
int currentNumber=number[i];
int k;
for(k=i-1;k>=0&&number[k]>currentNumber;k--){
number[k+1]=number[k];
}
number[k+1]=currentNumber;
}
int n=10;
for(int i=2;i<number.length;i++){
if(number[i-1]==number[i-2]){
for(int j=i;j<number.length;j++){
number[j]=number[j-1];

把输入的数放入Set里不就能过滤掉相同的吗?这是我写的,可以看下。
public static void main(String[] args)
{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入10数字,中间以逗号分开:");
try
{
String inputStr = in.readLine();
Set outputStr = new HashSet();
StringTokenizer st = new StringTokenizer(inputStr,",");
while(st.hasMoreElements()){
String num = st.nextToken();
outputStr.add(num);
}

for(Iterator it = outputStr.iterator();it.hasNext();){
System.out.println("输出的数为:" + it.next());
}
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
i