java中集合的详细讲解(总结篇)
2016-09-23 20:09
495 查看
java中的集合有List,Set,Map之前一直混淆,尤其是遍历方法容易牛头不对马嘴,所以今天花点时间好好整理下:
本文只介绍ArrayList,HashSet,TreeSet,HashMap,TreeMap的添加和遍历,队列Queue和栈Stack的基本使用
List:
本文只介绍ArrayList,HashSet,TreeSet,HashMap,TreeMap的添加和遍历,队列Queue和栈Stack的基本使用
List:
List list = Arrays.asList("一","二","三","八","五","六","零","一"); Iterator iterator = list.iterator(); while(iterator.hasNext()){ //使用迭代器遍历 System.out.println(iterator.next()); } for (String l: //for循环 list) { System.out.println(l); } System.out.println(list.get(5)); System.out.println(list.lastIndexOf("一")); ListIterator stringListIterator = list.listIterator(4); Spliterator spliterator = list.spliterator();//分迭代器 // spliterator.forEachRemaining(lang -> System.out.println(lang)); List strings = list.subList(2, 6); //输出list中从下标2到6的元素 for (String s : strings){ System.out.println(s); }
HashSet的使用:Set hashset = new HashSet<>(); hashset.add("小二"); hashset.add("大二"); hashset.add("小二"); hashset.add("六"); hashset.add("炸"); Set humanSet = new HashSet<>(); humanSet.add(new Human("1","2")); humanSet.add(new Human("3","4")); humanSet.add(new Human("5","6")); Human[] s = humanSet.toArray(); Iterator iterator = hashset.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } Spliterator spliterator = hashset.spliterator(); spliterator.forEachRemaining(s -> System.out.println(s));
TreeSet的使用:Set treeHuman = new TreeSet<>(new Comparator() { @Override public int compare(Human o1, Human o2) { return -1; } }); treeHuman.add(new Human("1","2")); treeHuman.add(new Human("3","4")); treeHuman.add(new Human("5","6")); Iterator iterator = treeHuman.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); }
Map之HashMap的使用:Map,String> hashMap = new TreeMap<>(); hashMap.put("123","qwe"); hashMap.put("234","asd"); hashMap.put("345","zxc"); Iterator, String>> iterator = hashMap.entrySet().iterator();//迭代器 while (iterator.hasNext()) { Map.Entry, String> next = iterator.next(); String s1 = next.getKey(); String s2 = next.getValue(); System.out.println(s1+" "+s2); } Object[] objects = hashMap.entrySet().toArray();//数组 for (int i = 0 ; i < objects.length;i++){ Map.Entry object = (Map.Entry) objects[i]; Object key = object.getKey(); Object value = object.getValue();
TreeMap的使用:
Map,Integer> treeMap = new TreeMap<>(); treeMap.put("123",1); treeMap.put("234",2); treeMap.put("345",3); treeMap.put("456",4); Set strings = treeMap.keySet(); Iterator iterator = strings.iterator(); while (iterator.hasNext()) { int s = treeMap.get(iterator.next()); System.out.println(s); }
System.out.println(key+" " +value); }
队列Queue和栈Stack的讲解:
package sample.org.jasen.TestQueueAndStack; import java.util.LinkedList; import java.util.Queue; import java.util.Stack; class TestQueueAndStack { static void testQueue(){ Queue queue=new LinkedList(); //添加几个元素 queue.offer("a"); queue.offer("b"); queue.offer("c"); queue.offer("d"); queue.offer("e"); queue.add("1"); queue.add("2"); queue.add("3"); queue.add("4"); queue.add("5"); System.out.println("队列中的元素是:"+queue); //弹出元素 queue.poll(); System.out.println("队列中的元素是:"+queue); //查看队列中首个元素,并不移除 String peek=queue.peek(); System.out.println("查看队列中首个元素,并不移除:"+peek); System.out.println("队列中的元素是:"+queue); } static void testStack(){ Stack stack=new Stack(); //添加几个元素 stack.push("a"); stack.push("b"); stack.push("c"); stack.push("d"); stack.push("e"); stack.add("1"); stack.add("2"); stack.add("3"); stack.add("4"); stack.add("5"); System.out.println("栈中的元素是:"+stack); //弹出元素 stack.pop(); System.out.println("栈中的元素是:"+stack); //查看栈中首个元素,并不移除 String peek=stack.peek(); System.out.println("查看栈中首个元素,并不移除:"+peek); System.out.println("栈中的元素是:"+stack); } public static void main(String[] args) { testQueue(); System.out.println("-------栈--------"); testStack(); } }
相关文章推荐
- Java集合详细讲解(一)
- Java 集合框架--HashSet详细介绍和使用总结
- 【Java集合的详细研究1】Collections类常用方法总结
- java集合遍历的几种方式总结及详细比较
- 第八节:详细讲解Java中的异常处理情况与I/O流的介绍以及类集合框架
- 如何使用Java中集合类的详细讲解
- Java 集合框架--HashMap详细介绍和使用总结
- 如何使用Java中集合类的详细讲解
- 详细讲解Java中集合类的使用
- 如何使用Java中集合类的详细讲解
- Java的集合详细总结
- java中最常用的集合 详细讲解
- 超详细的Java面试题总结之Java集合篇常见问题
- 用java调用oracle存储过程总结 (本人加详细注释)
- jdk命令集合详解(有关其他的java/bin中的*.exe讲解)
- (转载)java中的集合类总结
- java 孙鑫 第六课(第一部分) Java 中的集合类的讲解
- Java中各种文件类型操作的代码与详细文件IO讲解
- Java HashMap详细讲解
- 详细讲解Java中log4j的使用方法