Java内置数据结构学习简札(一)

Java内置数据结构学习简札(一) 使用ArrayList, LinkedList, HashSet,TreeSet存储数据并排序输出 题目需求描述:
成绩单录入排序输出
(1)从键盘输入一组字符串,以"quit"结束,将这些字符串分别存入ArrayList, LinkedList, HashSet,TreeSet集合中;
(2)遍历输出这些集合总的所有字符串
1.导入需要的包 导个用到的包就这么多代码,我们观察到这些用到的内置数据结构都在java.util中,其实用一行代码就可以代替:[import java.util.* ]
2.从键盘输入一组字符串,以"quit"结束

String endStr = "quit"; Scanner scan = new Scanner(System.in); ArrayList al = new ArrayList(); LinkedList ll = new LinkedList(); Set hs = new HashSet(); Set ts = new TreeSet(); System.out.println("请把成绩单的成绩按行输入:");

Tips:我们这里创建使用HashSet和TreeSet时,使用了上转型对象Set,就可以实现自动排序
3.将这些字符串分别存入ArrayList, LinkedList, HashSet,TreeSet集合中
String s = null; while(!(s=scan.nextLine()).equals(endStr)) { al.add(s); ll.add(s); hs.add(s); ts.add(s); }

4.遍历输出这些集合总的所有字符串
Collections.sort(al); //Collections.sort(ll); 也可以 ll.sort(null); System.out.println("===========================排序后的成绩单==================================="); System.out.println("--------------------------ArrayList---------------------------------"); for(String ss:al) { System.out.println(ss); } System.out.println("--------------------------LinkedList--------------------------------"); for(String ss:ll) { System.out.println(ss); }System.out.println("--------------------------HashSet-----------------------------------"); for(String ss:hs) { System.out.println(ss); }System.out.println("--------------------------TreeSet----------------------------------"); for(String ss:ts) { System.out.println(ss); }

5.完整代码
package zhoulingyun; ?//这里是你的包 import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.LinkedList; import java.util.Scanner; import java.util.Set; import java.util.TreeSet; ? //(1)从键盘输入一组字符串,以"quit"结束,将这些字符串分别存入ArrayList, LinkedList, HashSet,TreeSet集合中; //(2)遍历输出这些集合总的所有字符串 //成绩单录入排序输出 public class Test1 { ? public static void main(String[] args) { //从键盘输入一组字符串,以"quit"结束 String endStr = "quit"; Scanner scan = new Scanner(System.in); ArrayList> al = new ArrayList>(); LinkedList> ll = new LinkedList>(); Set> hs = new HashSet>(); Set> ts = new TreeSet>(); System.out.println("请把成绩单的成绩按行输入:"); String s = null; while(!(s=scan.nextLine()).equals(endStr)) { al.add(s); ll.add(s); hs.add(s); ts.add(s); }Collections.sort(al); //Collections.sort(ll); ll.sort(null); System.out.println("===========================排序后的成绩单==================================="); System.out.println("--------------------------ArrayList---------------------------------"); for(String ss:al) { System.out.println(ss); } System.out.println("--------------------------LinkedList--------------------------------"); for(String ss:ll) { System.out.println(ss); }System.out.println("--------------------------HashSet-----------------------------------"); for(String ss:hs) { System.out.println(ss); }System.out.println("--------------------------TreeSet----------------------------------"); for(String ss:ts) { System.out.println(ss); } } ? }

【Java内置数据结构学习简札(一)】?
最后说一句,这是哪个老师出的题,有点莫名其妙,虽然还是写出来了,毕竟是老师,这个成绩单有点抽象!

    推荐阅读