| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
ADSL如何秒变专线,公网IP盒子了解一下千里之行 始于足下
共有 695 人关注过本帖
标题:问题:从键盘中输入一些整数,输出不重复的整数
只看楼主 加入收藏
林月儿
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:湖南
等 级:版主
威 望:132
帖 子:1920
专家分:8443
注 册:2015-3-19
  得分:0 
程序代码:
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import java.util.stream.Collectors;

public class Test0515 {
    public static void main(String[] args) {
        // 输出不重复的整数
        Scanner scanner = new Scanner(System.in);
        System.out.print("Please input the number:");
        int number = scanner.nextInt();
        System.out.print("Please input some integers:");
        List<Integer> numArr = new ArrayList<>();
        for(int i = 0;i < number;i++) numArr.add(scanner.nextInt());
        scanner.close();
        Map<Integer, Integer> map = numArr.stream().
                collect(Collectors.toMap(e->e, e->1, (e, e2)->e+e2));
        System.out.println(map);
        map.forEach((k,v)->{
            if(v==1)
                System.out.println(k);
        });
    }
}


Please input the number:
5
Please input some integers:1
2
2
3
4
{1=1, 2=2, 3=1, 4=1}
1
3
4

知命以下无敌
2019-05-16 00:53
林月儿
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:湖南
等 级:版主
威 望:132
帖 子:1920
专家分:8443
注 册:2015-3-19
  得分:0 
也可以11楼的统计计数的方式解决,详细的记录每个数字出现的次数
这里用的lambda表达式,也可以普通的遍历如
程序代码:
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class Test0515 {
    public static void main(String[] args) {
        // 输出不重复的整数
        Scanner scanner = new Scanner(System.in);
        System.out.print("Please input the number:");
        int number = scanner.nextInt();
        System.out.print("Please input some integers:");
        Map<Integer, Integer> map = new HashMap<>();
        for(int i = 0;i < number;i++) {
            int inputVal = scanner.nextInt();
            if(map.get(inputVal) == null) {
                map.put(inputVal, 0);
            }
            map.put(inputVal, map.get(inputVal)+1);
        }
        scanner.close();
        System.out.println(map);
        map.forEach((k,v)->{
            if(v==1)
                System.out.println(k);
        });
    }
}


知命以下无敌
2019-05-16 01:01
bug娃娃
Rank: 2
等 级:论坛游民
帖 子:90
专家分:27
注 册:2019-3-15
  得分:0 
回复 12楼 林月儿
2019-05-16 07:37







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020770 second(s), 9 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved