程序启动后,可以从键盘输入接收多个整数,直到输入quit时结束

来源:互联网 发布:机票代理 知乎 编辑:程序博客网 时间:2024/05/22 16:00
package cn.jit.test;import java.util.Comparator;import java.util.Scanner;import java.util.TreeSet;/** * 程序启动后,可以从键盘输入接收多个整数,直到输入quit时结束输入, * 把所有输入的整数倒序排列打印。 * 分析: * 1.创建Scanner对象,键盘对象; * 2.创建TreeSet集合对象,TreeSet集合中传入比较器; * 3.无限循环不断接收,遇到quit退出,因为退出是quit,所以键盘录入的时候应该都以字符串的形式; * 4.判断是quit就退出,不是将其转换为Integer,并添加到集合中; * 5.遍历TreeSet集合并打印每一个元素。 * @author Rocky *  */public class Test6 {public static void main(String[] args) {//1 创建Scanner对象,键盘对象Scanner scan = new Scanner(System.in);System.out.println("请输入一个整数:");//2 创建TreeSet集合对象,TreeSet集合中传入比较器TreeSet<Integer> ts = new TreeSet<Integer>(new Comparator<Integer>() {@Overridepublic int compare(Integer i1, Integer i2) {//int num = i2 - i1;//自动拆箱int num = i2.compareTo(i1);return num == 0 ? 1 : num;}});/* * 3 无限循环不断接收,遇到quilt退出,因为退出是quit, * 所以键盘录入的时候应该都以字符串的形式 */while(true) {//将键盘录入的字符串存储在line中String line = scan.nextLine();if("quit".equals(line)) {break;}try {//4 判断是quit就退出,不是将其转换为Integer,并添加到集合中int num = Integer.parseInt(line);ts.add(num);} catch (Exception e) {System.out.println("您输入的数据有误,请输入一个整数:");}}//5 遍历TreeSet集合并打印每一个元素for (Integer integer : ts) {System.out.println(integer);}}}

0 0
原创粉丝点击