服务器之家

服务器之家 > 正文

Java遍历集合的三种方式

时间:2020-07-14 17:47     来源/作者:Bigerf

对于遍历集合获取其对象,在这里总结的三种简单方式

方式一 : 将集合变为数组,后遍历数组

?
1
2
3
4
Object[] obj = list.toArray();
for(Object s : obj){
  System.out.println((String) s);
}

方式二 :  get()方法获取 。 但只能在list集合中使用, 只有List集合才有索引值。

?
1
2
3
for(int i = 0;i<list.size();i++){
  System.out.println(list.get(i));
}

方式三 :  通过迭代器

?
1
2
3
4
ListIterator it = list.listIterator();
  while(it.hasNext()){
    System.out.println(it.next());
}

 一下有两案例可对比

Collection案例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
public class paseWork {
  public static void main(String[] args) {
    CollectionTest();
  }
  public static void CollectionTest(){
    Collection <String>collection = new ArrayList<String>();
    collection.add("初一");
    collection.add("小二");
    collection.add("张三");
    collection.add("李四");
    collection.add("王五");
    //1.集合转为数组 Object[]
    Object[] objectsArrC = collection.toArray();
    for (Object object : objectsArrC) {
      String string = (String) object; // 将对象强制转换为字符串输出
      System.out.println(string);
    }   
    //2.get()方法获取元素
    for (int i = 0;i < collection.size();i++){
      //get()只能用在list集合中,所以这里需要转换形式
      System.out.println(((ArrayList<String>) collection).get(i));
    }
    //3.迭代器
    Iterator<String> it = collection.iterator();
    while(it.hasNext()){
      System.out.println(it.next());
    }
  
}

List 案例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.ListIterator;
public class paseWork {
  public static void main(String[] args) {
    ListTest();
  }
  public static void ListTest(){
    List<String> list = new ArrayList<String>();
    list.add("初一");
    list.add("小二");
    list.add("张三");
    list.add("李四");
    list.add("王五");
    //1.集合转为数组 Object[]
    Object[] objectsArrL = list.toArray();
    for (Object object : objectsArrL) {
      String string = (String) object; //将对象强制转换为字符串输出
      System.out.println(string);
    }
    //2.通过 get() 方法
    for (int i = 0; i < list.size(); i++) {
      System.out.println(list.get(i));
    
    //3.迭代器
    ListIterator<String> iterator = list.listIterator();
    while(iterator.hasNext()){
      System.out.println(iterator.next());
    }
  }
}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持服务器之家!

原文链接:http://www.cnblogs.com/bigerf/p/6180772.html

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
返回顶部