欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java集合中l(wèi)ist的用法代碼示例

 更新時(shí)間:2017年11月09日 15:24:20   作者:老潘的博客  
這篇文章主要介紹了java集合中l(wèi)ist的用法代碼示例,分享了相關(guān)代碼,具有一定參考價(jià)值,需要的朋友可以了解下。

List接口是Collection接口的子接口,List有一個(gè)重要的實(shí)現(xiàn)類--ArrayList類,List中的元素是有序排列的而且可重復(fù),所以被稱為是序列。

List可以精確的控制每個(gè)元素的插入位置,或刪除某個(gè)位置元素,它的實(shí)現(xiàn)類ArrayList底層是由數(shù)組實(shí)現(xiàn)的。

List中有增刪改查的方法,我們可以通過(guò)例子演示:

我們通過(guò)對(duì)學(xué)生選課,來(lái)演示List中對(duì)課程增刪改查的方法

/**
 * 課程類
 * @author lenovo
 *
 */
public class KeCheng {
  public String id;
  public String name;
  public KeCheng(String id,String name){
    this.id = id;
    this.name = name;
  }
}

創(chuàng)建一個(gè)學(xué)生類

import java.util.HashSet;
import java.util.Set;
/**
 * 學(xué)生類
 * @author lenovo
 *
 */
public class Student {
  public String id;
  public String name;
  public Set kecheng;
  public Student(String id,String name){
    this.id = id;
    this.name = name;
    this.kecheng = new HashSet();
  }
}

創(chuàng)建一個(gè)備選課程的類

/**
 * 備選課程類
 * @author lenovo
 *
 */
public class ListTest {
  //用于存放備選課程的List
  public List beixuan;
  public ListTest(){
    this.beixuan = new ArrayList();
  }
}

可以使用List中add方法添加課程

/*
   * 用來(lái)往beixuan里添加備選課程的方法
   */
  public void kcAdd(){
    //創(chuàng)建一個(gè)課程的對(duì)象,調(diào)用add方法,添加到備選課程的List中
    KeCheng kc = new KeCheng("1","數(shù)據(jù)結(jié)構(gòu)");
    beixuan.add(kc);
    KeCheng kc2 = new KeCheng("2","C語(yǔ)言");
    beixuan.add(0, kc2);
    KeCheng[] kcArr = {new KeCheng("3","大學(xué)語(yǔ)文"),new KeCheng("4","線性代數(shù)")};
    beixuan.addAll(Arrays.asList(kcArr));
    KeCheng[] kcArr2 = {new KeCheng("5","藝術(shù)設(shè)計(jì)"),new KeCheng("6","計(jì)算機(jī)基礎(chǔ)")};
    beixuan.addAll(2, Arrays.asList(kcArr2));
  }

使用get方法取出指定位置上的內(nèi)容,并用for循環(huán)遍歷出課程的內(nèi)容

/*
   * 使用for循環(huán)遍歷課程的方法
   */
  public void getKC(){
    int size = beixuan.size();
    System.out.println("使用for遍歷課程:");
    for (int i = 0; i < size; i++) {
      KeCheng kc = (KeCheng) beixuan.get(i);
      System.out.println("課程:"+kc.id+":"+kc.name+";");
    }
  }

遍歷List的內(nèi)容,除了使用for循環(huán)外,還可以使用迭代器、foreach等方法

/*
   * 使用Iterator迭代器遍歷課程
   */
  public void testIterator(){
    Iterator it = beixuan.iterator();
    System.out.println("使用Iterator遍歷課程:");
    while(it.hasNext()){
      KeCheng kc = (KeCheng) it.next();
      System.out.println("課程:"+kc.id+":"+kc.name+";");
    }
  }
  /*
   * 使用for each遍歷課程
   */
  public void testForeach(){
    System.out.println("使用for each遍歷課程:");
    for(Object obj : beixuan){
      KeCheng kc = (KeCheng)obj;
      System.out.println("課程:"+kc.id+":"+kc.name+";");
    }
  }

修改List中的元素,可以使用set方法

 /*
   * 使用set方法添加課程
   */
   public void testModify(){
     beixuan.set(0, new KeCheng("7","毛概"));
   }

刪除List中的元素有兩種方法,一是使用remove方法

/*
   * 使用remove方法刪除課程
   */
  public void testRemove(){
    KeCheng kc = (KeCheng) beixuan.get(0);
    System.out.println("我是課程:"+kc.id+":"+kc.name+";即將被刪除");
    boolean b = beixuan.remove(kc);
    if(b){
      System.out.println("成功刪除課程");
      testForeach();
    }
  }

還可以使用removeAll方法刪除一個(gè)課程類型的數(shù)組

/*
   * 使用removeAll方法刪除課程
   */
  public void testRemoveAll(){
    System.out.println("即將刪除4和5位置上的課程");
    KeCheng[] kc = {(KeCheng) beixuan.get(4),(KeCheng) beixuan.get(5)};
    beixuan.removeAll(Arrays.asList(kc));
    System.out.println("課程刪除成功");
    testForeach();
  }

總結(jié)

以上就是本文關(guān)于java集合中l(wèi)ist的用法代碼示例的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友繼續(xù)參閱本站:java集合中的list詳解Java編程接口調(diào)用的作用及代碼分享、java并發(fā)學(xué)習(xí)之BlockingQueue實(shí)現(xiàn)生產(chǎn)者消費(fèi)者詳解等,有什么問(wèn)題可以隨時(shí)留言,小編會(huì)及時(shí)回復(fù)大家的。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • idea啟動(dòng)多個(gè)SpringBoot服務(wù)實(shí)例的最優(yōu)解決方法

    idea啟動(dòng)多個(gè)SpringBoot服務(wù)實(shí)例的最優(yōu)解決方法

    啟動(dòng)SpringBoot項(xiàng)目其實(shí)就是啟動(dòng)Tomcat等服務(wù)容器,只要這個(gè)端口不同就能啟動(dòng)多個(gè)服務(wù)實(shí)例了,本文主要介紹了idea啟動(dòng)多個(gè)SpringBoot服務(wù)實(shí)例的最優(yōu)解決方法,感興趣的可以了解一下
    2024-05-05
  • Java實(shí)現(xiàn)發(fā)送郵件功能時(shí)碰到的坑

    Java實(shí)現(xiàn)發(fā)送郵件功能時(shí)碰到的坑

    之前用163郵箱發(fā)郵件時(shí)明明是成功的,但是使用中國(guó)移動(dòng)自己的郵箱時(shí),無(wú)論如何在linux服務(wù)器中都發(fā)送不成功。下面小編給大家說(shuō)下我是怎么解決的,一起看下吧
    2016-06-06
  • Maven入門之使用Nexus搭建Maven私服及上傳下載jar包

    Maven入門之使用Nexus搭建Maven私服及上傳下載jar包

    這篇文章主要介紹了Maven入門之使用Nexus搭建Maven私服及上傳下載jar包,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Java常用鎖synchronized和ReentrantLock的區(qū)別

    Java常用鎖synchronized和ReentrantLock的區(qū)別

    這篇文章主要介紹了Java常用鎖synchronized和ReentrantLock的區(qū)別,二者的功效都是相同的,但又有很多不同點(diǎn),下面我們就進(jìn)入文章了解具體的相關(guān)內(nèi)容吧。需要的小伙伴也可以參考一下
    2022-05-05
  • Java方法參數(shù)傳遞如何實(shí)現(xiàn)

    Java方法參數(shù)傳遞如何實(shí)現(xiàn)

    這篇文章主要介紹了Java方法參數(shù)傳遞如何實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • SpringBoot核心@SpringBootApplication使用介紹

    SpringBoot核心@SpringBootApplication使用介紹

    這篇文章主要介紹了SpringBoot核心@SpringBootApplication的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • java 生成有序賬號(hào)的實(shí)現(xiàn)方法

    java 生成有序賬號(hào)的實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇java 生成有序賬號(hào)的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-10-10
  • 深入jetty的使用詳解

    深入jetty的使用詳解

    本篇文章是對(duì)jetty的使用進(jìn)行了詳細(xì)的分析解釋。需要的朋友參考下
    2013-05-05
  • SpringBoot整合token實(shí)現(xiàn)登錄認(rèn)證的示例代碼

    SpringBoot整合token實(shí)現(xiàn)登錄認(rèn)證的示例代碼

    本文主要介紹了SpringBoot整合token實(shí)現(xiàn)登錄認(rèn)證的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • MyBatisPlus利用Service實(shí)現(xiàn)獲取數(shù)據(jù)列表

    MyBatisPlus利用Service實(shí)現(xiàn)獲取數(shù)據(jù)列表

    這篇文章主要為大家詳細(xì)介紹了怎樣使用 IServer 提供的 list 方法查詢多條數(shù)據(jù),這些方法將根據(jù)查詢條件獲取多條數(shù)據(jù),感興趣的可以了解一下
    2022-06-06

最新評(píng)論