java输入一列数字到数组中,打印输出数组中不同的数字,相同的数字只输出一次…

java中输入一列数字到数组中,打印输出数组中不同的数字,去掉相同的数字…具体题目是建立一个10个数的一维数组,从控制台输入10个数字,然后把这个数组中相同的数字只输出一... java中输入一列数字到数组中,打印输出数组中不同的数字,去掉相同的数字…具体题目是建立一个10个数的一维数组,从控制台输入10个数字,然后把这个数组中相同的数字只输出一次…比如输入1,1,2,2,3,3,3,4,4,5,打印输出,1,2,3,4,5…请给出详细的java程序,谢谢啊
能不能用哈希表编写出来?谁告诉我
展开
 我来答
百度网友b8f909b
推荐于2017-11-25 · TA获得超过795个赞
知道小有建树答主
回答量:554
采纳率:0%
帮助的人:467万
展开全部
编程的东西还是得自己动脑动手才学的会啊。
下面的代码是我给你提供的一种纯自己写的方法,不依靠SDK里面的任何已有类。
另外一种是用HashSet,将输入的元素存到HashSet中,因为Set是不允许有重复元素的,所以重复添加只会有一个值的元素存在。
import java.util.Scanner;
public class Test2 {
public static void main(String[] args) {
System.out.println("请输入数组长度:");
Scanner sc = new Scanner(System.in);
int length = sc.nextInt();
System.out.println("请输入数组元素:");
int a[] = new int[length];
boolean isNumberInA[] = new boolean[length];
for(int i=0;i<length;i++){
a[i] = Integer.MIN_VALUE;
isNumberInA[i] = false;
}
for(int i=0,j=0;i<length;i++){
int input = sc.nextInt();
if(isNumberInA[input]==false){
a[j] = input;
isNumberInA[input] = true;
j++;
}
}
System.out.println("数组输出为:");
for(int i=0;i<length;i++){
if(a[i]==Integer.MIN_VALUE)
break;
else System.out.print(a[i]+" ");
}
}
}
匿名用户
2018-08-11
展开全部
emmmmmm......

import java.util.Scanner;
public class 打印 {
public static void main(String[] args){
int[] array = {11,6,4,7,12,3,7,5,1,61,2,1,3,8,9,2,8,10,9};
java.util.Arrays.sort(array);
String str = array[0] + " ";
for(int i=1;i<array.length;i++){
int[] arr =new int[i];
System.arraycopy(array, 0, arr, 0, i);
int b = java.util.Arrays.binarySearch(arr,array[i]);
if(b<0)
str = str + array[i] + " ";
}
String arr[] = str.split(" ");
int a[] = new int[arr.length];
for(int j = 0; j < a.length; j++)
a[j] = Integer.parseInt(arr[j]);
for(int i=0;i<a.length;i++)
System.out.print( a[i]+" ");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
icyfight
2012-11-16
知道答主
回答量:3
采纳率:0%
帮助的人:2.9万
展开全部
public void process(string args){

int[] intArr=new int[10];
String[] numbers=args.split(",");
for(int i=0;i<numbers.length;i++){
int number=0;
try{
number=Integer.parseInt(numbers[i]);
}catch(NumberFormatException nfe){
nfe.printStackTrace();
}
intArr[number-1]=1;//不输入0的话,number-1
}
for(int i=0;i<intArr.length;i++){
if(intArr[i]!=0){
System.out.print(i+1);
}
if(i!=9){
System.out.print(",");
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
545154513
2012-11-16 · 超过11用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:24.4万
展开全部
虽然很简单,但是我真的希望你能自己写出来,一个循环就可以做到的,自己想想吧,这种问题用20分问然后等答案,你的水平不会有任何提高的。。。慢慢打基础吧。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式