package text; import java.util.*; import javax.swing.text.html.HTMLDocument.Iterator; public class t20151016s { public static void main(String[] args) { //ArrayList 内容不是事先设定好的,可以随时向里面添加内容 List<String> al = new ArrayList<>(); //将ArrayList向上转换给List al.add("abc"); System.out.println("集合大小 = "+ al.size()); al.add("def"); System.out.println("集合大小 = "+ al.size()); System.out.println("集合内容 = "+ al.get(1)); for(int i = 0;i < 10;i++) { al.add(String.format("%s", (Math.random() * 1000))); //String.format 格式化 %s 字符串类型 Math.random 0-1的随机数 } System.out.println(); for(int i = 0;i < al.size();i++) { System.out.println("集合内容是:" + al.get(i)); } al.clear(); //清除所有 System.out.println("是否为空:"+ al.isEmpty()); // .isEmpty 判断是否为空 返回一个布尔值 所有的 .is 都是返回布尔值 /* al.size(); //size 容量 al.get(0); //get 传输的是索引值 al.remove(0); //移除索引为0的项 al.set(0, "新的值"); //替换 将索引为0的量替换为 "新的值" 这个值 al.clear(); //清除所有 al.add(8,"add"); //从索引值为8的位置开始插入一个量,原来的量依次后移 */ } }
package text; import java.util.*; public class t20151016x { public static void main(String[] args) { //LinkedList LinkedList<String> ll = new LinkedList<>(); for(int i = 10;i > 0;i--) { ll.add("" + i); //ll.add(String.format("%s", (Math.random() * 1000))); //String.format 格式化 %s 字符串类型 Math.random 0-1的随机数 } ll.add("10"); //List 中数值可以重复。 Set 中不可重复 for(int i = 0;i < ll.size();i++) { System.out.println("集合内容是:" + ll.get(i)); } //Set HashSet<String> hs = new HashSet<>(); hs.add("abc"); hs.add(""); for(int i = 20; i > 0;i--) { hs.add("" + i); //ll.add(String.format("%s", (Math.random() * 1000))); } //迭代器 Iterator<String> ls = hs.iterator(); while(ls.hasNext()) { System.out.println("迭代 = "+ls.next()); } TreeSet<String> ts = new TreeSet<>(); for(int i = 0;i < 20;i++) { ts.add("" + i); //ll.add(String.format("%s", (Math.random() * 1000))); //String.format 格式化 %s 字符串类型 Math.random 0-1的随机数 } System.out.println("first = "+ ts.first()+" last = "+ ts.last()); Iterator<String> is = ts.iterator(); while(is.hasNext()) { System.out.println("treeSet = "+is.next()); } for(String s : ts) { System.out.println("foreach = " + s); } //哈希Map HashMap<String,String> hm = new HashMap<>();//<String,String> <键 , 值> //键必须不同,值可以相同! hm.put("255000", "淄博"); hm.put("234000", "济南"); hm.put("11000", "北京"); hm.put(null, null); //空值也是可以存储的 System.out.println("size = "+hm.size());//检测放入的数值的长度 //hm.remove("11000");//移除键值对 System.out.println("255000对应城市为:"+hm.get("255000"));//取出对应键值对 System.out.println("是否包含 :"+hm.containsKey("23232"));//自动查找是否有23232 这个键 System.out.println("是否包含 :"+hm.containsValue("北京"));//自动查找是否有 北京 这个值 //先取出key的集合,通过遍历key的集合来遍历map Set<String> ss = hm.keySet(); for(String s: ss) { System.out.println("key = "+s+",value ="+hm.get(s)); } Collection<String> c = hm.values(); for(String s:c) { System.out.println("value =" + s); } //此时不能使用foreach,只能使用迭代器 TreeMap<String,String> tm = new TreeMap<>(); tm.put("255000", "淄博"); tm.put("234000", "济南"); tm.put("110000", "北京"); //tm.put(null, null);//空值不可以存储,会直接报错 System.out.println("firstkey = " + tm.firstKey());//取最小键 System.out.println("firstEntry = " + tm.firstEntry());//取最小键值对 System.out.println("ceilingKey = " + tm.ceilingKey(""));//没有找到,返回空, 如果匹配,返回一个最相近的上限的值 //按键排序后,输出值 Set<String> ks = tm.keySet(); for(String s : ks) { System.out.println("key = "+s+",value = "+tm.get(s)); } } }