7-5 sdut-String+array(LinkedHashMap) 读中国载人航天史,汇航天员数量,向航天员致敬(1) --笔记篇
2024-01-08 16:33:50
题目
1986年,中国实施“863”计划,航天技术列入其中。以载人飞船开始起步,最终建成我国的空间站。
1992年9月21日,中国实施载人航天工程,并确定了三步走的发展战略:第一步,发射载人飞船,建成初步配套的试验性载人飞船工程。第二步,突破载人飞船和空间飞行器的交会对接技术,利用载人飞船技术改装、发射一个空间实验室。第三步,建造载人空间站。
在长期的奋斗中,我国航天工作者不仅创造了非凡的业绩,而且铸就了特别能吃苦、特别能战斗、特别能攻关、特别能奉献的载人航天精神。载人航天精神,是“两弹一星”精神在新时期的发扬光大,是我们伟大民族精神的生动体现,永远值得全党、全军和全国人民学习。
截至2021年4月,历任航天英雄名字如下:
杨利伟(神舟五号)
费俊龙、聂海胜(神舟六号)
翟志刚、景海鹏、刘伯明(神舟七号)
景海鹏、刘旺、刘洋(神舟九号)
聂海胜、张晓光、王亚平(神舟十号)
景海鹏、陈东(神舟十一号)
会编程的小伙伴们,请以他们出征太空的先后顺序,统计一下航天英雄们出征太空的次数,以实际行动向航天员们致敬!
输入格式:
每次航天飞船的编号为一行读入数据,分别读入每次飞上太空的航天英雄的姓名,名字中间有一个空格分隔。
最后一行为“end“,表示输入结束。
提示:目前,中国航天员的数量小于20。
输出格式:
以出征太空的先后顺序,统计航天英雄们出征太空的次数。
每位航天员占一行,航天员姓名与出征次数中间有一个空格。
输入样例:
杨利伟
费俊龙 聂海胜
翟志刚 景海鹏 刘伯明
景海鹏 刘旺 刘洋
聂海胜 张晓光 王亚平
景海鹏 陈东
end
输出样例:
杨利伟 1
费俊龙 1
聂海胜 2
翟志刚 1
景海鹏 3
刘伯明 1
刘旺 1
刘洋 1
张晓光 1
王亚平 1
陈东 1
代码
import java.util.*;
public class Main{
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
LinkedHashMap<String,Integer> p=new LinkedHashMap<>();
while (in.hasNext()){
String n=in.next();
if (n.equals("end")) break;
if (p.containsKey(n)) p.put(n,p.get(n)+1);
else p.put(n,1);
}
p.forEach((key,value)->System.out.println(key+" "+value));
}
}
笔记
- HashMap 在 Java 中并不保证元素的顺序。它不像 ArrayList 或 LinkedList 那样,元素的顺序是插入的顺序。HashMap 的元素顺序是随机的,并且在每次运行程序时可能都会改变。
如果你需要保持元素的插入顺序,你应该使用 LinkedHashMap。LinkedHashMap 是 HashMap 的一个子类,它保持了元素的插入顺序。
如果你需要保持元素的自然顺序(例如,按字母顺序排序),你应该使用 TreeMap。TreeMap 是 Map 的一个实现,它保持了元素的自然顺序。
所以,如果你希望保持元素的插入顺序,你可以使用 LinkedHashMap,如果你希望保持元素的自然顺序,你可以使用 TreeMap。
2.forEach快捷写法
文章来源:https://blog.csdn.net/weixin_52057528/article/details/135459704
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!