是不是有点乱啊????????????????????????????
package com.heima.Demo;
import java.sql.Array;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
import java.util.TreeSet;
import sun.awt.image.ImageWatched.Link;
import sun.misc.Sort;
import sun.reflect.generics.tree.Tree;
import com.sun.xml.internal.ws.api.pipe.NextAction;
public class Demo {
/**
* * 程序启动后, 可以从键盘输入接收多个整数, 直到输入quit时结束输入. 把所有输入的整数倒序排列打印.
*
* 1,创建Scanner对象,键盘录入
* 2,创建TreeSet集合对象,TreeSet集合中传入比较器
* 3,无限循环不断接收整数,遇到quit退出,因为退出是quit,所以键盘录入的时候应该都以字符串的形式录入
* 4,判断是quit就退出,不是将其转换为Integer,并添加到集合中
* 5,遍历TreeSet集合并打印每一个元素
*/
public static void main(String[] args) {
/*Scanner sc = new Scanner(System.in);
TreeSet<Integer> ts = new TreeSet<>(new Comparator<Integer>() {
@Override
public int compare(Integer s1, Integer s2) {
int num = s1.compareTo(s2);
return num == 0 ? 1 : num;
}
});
while (true) {
System.out.println("请输入整数");
String s = sc.nextLine();
if ("quit".equals(s)) {
break;
}
else {
Integer it = Integer.parseInt(s);
}
for (Integer integer : ts) {
ts.add(integer);
System.out.println(ts);
}*/
//1,创建Scanner对象,键盘录入
Scanner sc = new Scanner(System.in);
//2,创建TreeSet集合对象,TreeSet集合中传入比较器
TreeSet<Integer> ts = new TreeSet<>(new Comparator<Integer>() {
@Override
public int compare(Integer i1, Integer i2) {
//int num = i2 - i1; //自动拆箱
int num = i2.compareTo(i1);
return num == 0 ? 1 : num;
}
});
//3,无限循环不断接收整数,遇到quit退出,因为退出是quit,所以键盘录入的时候应该都以字符串的形式录入
while(true) {
String line = sc.nextLine(); //将键盘录入的字符串存储在line中
if("quit".equals(line)) {
break;
}
//4,判断是quit就退出,不是将其转换为Integer,并添加到集合中
Integer i = Integer.parseInt(line);
ts.add(i);
}
// 5,遍历TreeSet集合并打印每一个元素
for (Integer integer : ts) {
System.out.println(integer);
}
}
} |
|