List遍历方式
方式一:for循环
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
方式二:for-each循环
for(String s:list){
System.out.println(s);
}
方式三:迭代器(Iterator)
Iterator<String> it=list.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
Set遍历方式
方式一:for-each循环
for(String s:list){
System.out.println(s);
}
方式二:迭代器(iterator)
Iterator<String> it=set.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
Map遍历方式
HashMap<String, Integer> map=new HashMap<String, Integer>();
map.put("长津湖", 13000);
map.put("大耳朵图图", 13000);
方式一:entrySet()
for (Entry<String, Integer> kv :map.entrySet()) {
System.out.println(kv.getKey());
System.out.println(Arrays.toString(kv.getValue()));
}
方式二:for-each循环
//key
//key
for(String key:map.keySet()){
System.out.println("key:"+key+" "+"Value:"+map.get(key))
}
//value
for(Integer value:map.values){
System.out.println(value)
}
方式三:迭代器(iterator)
Iterator<Entry<String, Integer>> entries = map.entrySet().iterator();
while(entries.hasNext()){
Entry<String, Integer> entry = entries.next();
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key+":"+value);
}
Queue遍历方式
Queue(接口)遵循先进先出(FIFO)原则,单向出队,前端出队后端入队。
Queue<String> queue=new LinkedList<String>();
queue.offer("A1");
queue.offer("A2");
queue.offer("A3");
方式一:for-each循环
for (String q : queue) {
System.out.println(q);
}
方式二:迭代器(iterator)
Iterator it = queue.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
方式三:while循环
使用isEmpty()方法判断队列是否为空,然后出队遍历
while (!queue.isEmpty()) {
System.out.println(queue.poll());
}
Deque遍历方式
Deque(接口)双端队列,与Queue不同点在于,Deque可以从俩端进行出队与入队是双向的。
Deque<String> deque=new LinkedList<String>();
deque.offerFirst("B1");//队头
deque.offerLast("B2");//队尾
deque.offer("B3");//队尾
方式一:for-each循环
for(String s: deque) {
System.out.println(s);
}
方式二:while循环(出队遍历)
String item=null;
while((item=deque.pollLast())!=null) {
System.out.println(item);
}
方式三:迭代器(iterator)
Iterator<String> it =deque.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
Stack遍历方式
Stack<String> stack=new Stack<String>();
stack.push("A1");
stack.push("A2");
stack.push("A3");
方式一:for-each循环
for(String s: stack) {
System.out.println(s);
}
方式二:while循环 (遍历并出栈)
while(!stack.isEmpty()) {
System.out.println(stack.pop());
}
方式三:迭代器(iterator)
Iterator<String> it=stack.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}