Java遍历集合的三种方式_java

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

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

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

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

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

方式三 :  通过迭代器

  ListIterator it = list.listIterator();
    while(it.hasNext()){
      System.out.println(it.next());
  }

 一下有两案例可对比

Collection案例:

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 案例:

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());
    }
  }
}

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

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java
, 遍历
集合
java遍历list集合、java遍历map集合、java遍历set集合、java遍历list对象集合、java集合遍历,以便于您获取更多的相关知识。

时间: 2024-09-20 11:50:27

Java遍历集合的三种方式_java的相关文章

详解Java实现多线程的三种方式_java

本文实例为大家分享了Java实现多线程的三种方式,供大家参考,具体内容如下 import java.util.concurrent.Callable; import java.util.concurrent.FutureTask; public class Main { public static void main(String[] args) { //方法一:继承Thread int i = 0; // for(; i < 100; i++){ // System.out.println(T

详细解读JAVA多线程实现的三种方式_java

最近在做代码优化时学习和研究了下JAVA多线程的使用,看了菜鸟们的见解后做了下总结. 1.继承Thread类实现多线程 继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通过Thread类的start()实例方法.start()方法是一个native方法,它将启动一个新线程,并执行run()方法.这种方式实现多线程很简单,通过自己的类直接extend Thread,并复写run(

java base64编码的三种方式

Java 中如何使用base64编码呢? 有如下三种方式: 方式一:commons-codec.jar Java代码   String base64String = "whuang123";           byte[] result = Base64.encodeBase64(base64String.getBytes());     方式二:使用sun.misc.BASE64Encoder Java代码   /**       * 编码       *        * @pa

java创建线程的三种方式及其对比

Java中创建线程主要有三种方式: 一.继承Thread类创建线程类 (1)定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务.因此把run()方法称为执行体. (2)创建Thread子类的实例,即创建了线程对象. (3)调用线程对象的start()方法来启动该线程. package com.thread; public class FirstThreadTest extends Thread{ int i = 0; //重写run方法,run方法的方

Java单例模式实现的几种方式_java

Java单例模式实现的几种方式 单例模式好多书上都是这么写的: public class SingleTon1 { private SingleTon1(){ } private static SingleTon1 instance = null; public static SingleTon1 getInstance(){ if(instance == null){ instance = new SingleTon1(); } return instance; } } 但是实际开发中是不会这

简述Java异步上传文件的三种方式_java

本文为大家分享了三种Java异步上传文件方式,供大家参考,具体内容如下 用第三方控件,如Flash,ActiveX等浏览器插件上传. 使用隐藏的iframe模拟异步上传. 使用XMLHttpRequest2来实现异步上传. 第一种使用浏览器插件上传,需要一定的底层编码功底,在这里我就不讲了,以免误人子弟,提出这点大家可以自行百度. 第二种使用隐藏的iframe模拟异步上传.为什么在这里说的是模拟呢?因为我们其实是将返回结果放在了一个隐藏的iframe中,所以才没有使当前页面跳转,感觉就像是异步操

JAVA多线程实现的三种方式

JAVA多线程实现 JAVA多线程实现方式主要有三种:继承Thread类.实现Runnable接口.使用ExecutorService.Callable.Future实现有返回结果的多线程.其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的. 前两种大家应该都熟悉,第三种不太常用,但有时面试时会问到所以我在这里写下. 继承Thread类实现多线程 继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实

Java创建线程的两种方式_java

前言 多线程是我们开发过程中经常遇到的,也是必不可少需要掌握的.当我们知道需要进行多线程开发时首先需要知道的自然是如何实现多线程,也就是我们应该如何创建线程. 在Java中创建线程和创建普通的类的对象操作是一样的,我们可以通过两种方式来创建线程: 1.继承Thread类,并重写run()方法. 2.实现Runnable接口,并实现run()方法. 方法一:继承Thread类 代码非常简单 首先重载一个构造函数,以便我们可以给线程命名. 重写run()方法. 这里我们先让线程输出线程名+start

详析Spring中依赖注入的三种方式_java

前言 平常的java开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中.依赖注入的另一种说法是"控制反转",通俗的理解是:平常我们new一个实例,这个实例的控制权是我们程序员,而控制反转是指new实例工作不由我们程序员来做而是交给spring容器来做. 在Sprin