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

java 集合之實(shí)現(xiàn)類ArrayList和LinkedList的方法

 更新時(shí)間:2017年10月19日 09:39:00   作者:yjl博客  
下面小編就為大家?guī)硪黄猨ava 集合之實(shí)現(xiàn)類ArrayList和LinkedList的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

List 的方法列表

方法名 功能說明
ArrayList() 構(gòu)造方法,用于創(chuàng)建一個(gè)空的數(shù)組列表
add(E e) 將指定的元素添加到此列表的尾部
get(int index) 返回此列表中指定位置上的元素
size() 返回此列表中的元素?cái)?shù)
clear() 移除此列表中的所有元素
isEmpty() 如果此列表中沒有元素,則返回true
remove(int index) 移除此列表中指定位置上的元素
indextof(Object o) 返回此列表中首次出現(xiàn)的指定元素的索引,或如果此列表不包含元素,則返回-1
toArray 按適當(dāng)順序(從第一個(gè)到最后一個(gè)元素)返回包含此列表中所有元素的數(shù)組

下面將用一個(gè)簡單的例子進(jìn)行說明:

實(shí)現(xiàn)類ArrayList

package yjlblog;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Test {
 
 public static void main(String[] args) {
  List list = new ArrayList();//List 是接口,用多態(tài)需要指向它的實(shí)現(xiàn)類
  list.add("double kill");
  list.add("three kill");
  list.add("four kill");
  list.add("pentakill");
  System.out.println(list); //[double kill, three kill, four kill, pentakill]
        //默認(rèn)調(diào)用的是tostring 方法,但是這個(gè)頭string方法不是object里面的,可以查幫助文檔可知,是繼承的collection的一個(gè)方法
  System.out.println(list.get(2)); //four kill
  String s = (String)list.get(2);//如果用定義變量的形式來表示的話,需要用到強(qiáng)制類型的轉(zhuǎn)換,因?yàn)閘ist。get()方法是object的類里的
  System.out.println(list.isEmpty());
  //false
  //list.clear();
  //System.out.println(list.isEmpty());
  //true
  //System.out.println(list.remove(2));//輸出制定索引的 被“刪除的元素”
  list.remove(1);//刪除索引為“1” 的元素
  System.out.println(list);//[double kill, four kill, pentakill],刪除了索引為“1”的元素
  System.out.println(list.indexOf("double kill"));//0 輸出所指明字符串的 “索引值”

  System.out.println(list.size());// 3 ,返回?cái)?shù)組的長度
  
  Object[] obj = list.toArray();
  System.out.println(obj.length);
  //數(shù)組的遍歷 for 循環(huán)
  for (int i = 0;i < list.size();i++)
  {
   System.out.print(list.get(i)+" ");
   
  }
  System.out.println();
  //使用for each 語句
  for (Object x:list)
  {
   System.out.print(x+" ");
  }
  System.out.println();
  //使用迭代器
  //1.先獲得list集合的迭代器
  Iterator iterator = list.iterator();
  //2.通過它的hasNest方法,判斷是否遍歷完成,用循環(huán)實(shí)現(xiàn)
  while (iterator.hasNext() == true)
  {
  //3.使用next方法,去除它的下一個(gè)元素
   System.out.print(iterator.next()+" ");
   
  }
  System.out.println();
   
  
  
 }

}
//再寫上迭代器的說明
//加上arraylist 和 linbkedlist的區(qū)別 和代碼
//加上后面的幾個(gè)方法

實(shí)現(xiàn)類LinkedList

List 接口的鏈接列表實(shí)現(xiàn),實(shí)現(xiàn)所有可選的列表操作,并且允許所有元素(包括null)。除了實(shí)現(xiàn)List接口外,LinkedList類還為在列表的開頭及結(jié)尾get,remove,insert元素提供了統(tǒng)一的命名方法。這些操作允許將鏈表列表表應(yīng)作堆棧、隊(duì)列、或雙端隊(duì)列。

LinkedList的部分方法

方法名 功能說明
addFirst(E e) 將指定元素插入此列表的開頭
addLast(E e) 將指定元素添加到此列表的結(jié)尾
removeFirst() 移除并返回此列表的第一個(gè)元素
removeLast() 移除并返回此列表的最后一個(gè)元素
getFirst() 返回此列表中的第一個(gè)元素
getLast() 返回此列表中的最后一個(gè)元素

package yjlblog;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Test {
 
 public static void main(String[] args) {
  List list = new LinkedList();//List 是接口,用多態(tài)需要指向它的實(shí)現(xiàn)類
  list.add("double kill");
  list.add("three kill");
  list.add("four kill");
  list.add("pentakill");
  System.out.println(list); //[double kill, three kill, four kill, pentakill]
  //和ArrayList 的其他方法都是一樣的,只是加了一些方法

集合的遍歷

從上面的例子中也有所提及,下面看代碼

使用for 循環(huán)

使用for -each 循環(huán)

使用Iterator(迭代器)接口

每個(gè)集合類都提供了iterator方法以返回一個(gè)迭代器,通過這個(gè)迭代器,可以完成集合的遍歷或刪除操作,迭代器的使用步驟如下:

****

1.通過Iterator方法獲得集合的迭代器

2.通過調(diào)用hasNext 方法判斷是否存在下一個(gè)元素

3.使用next方法,去除它的下一個(gè)元素

//數(shù)組的遍歷 for 循環(huán)
for (int i = 0;i < list.size();i++)
{
 System.out.print(list.get(i)+" ");
 
}
System.out.println();
//使用for each 語句
for (Object x:list)
{
 System.out.print(x+" ");
}
System.out.println();
//使用迭代器
//1.先獲得list集合的迭代器
Iterator iterator = list.iterator();
//2.通過它的hasNest方法,判斷是否遍歷完成,用循環(huán)實(shí)現(xiàn)
while (iterator.hasNext() == true)
{
//3.使用next方法,去除它的下一個(gè)元素
 System.out.print(iterator.next()+" ");
 
}
System.out.println();

以上這篇java 集合之實(shí)現(xiàn)類ArrayList和LinkedList的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Windows10安裝IDEA 2020.1.2的方法步驟

    Windows10安裝IDEA 2020.1.2的方法步驟

    這篇文章主要介紹了Windows10安裝IDEA 2020.1.2的方法步驟,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • mybatis-plus?查詢傳入?yún)?shù)Map,返回List<Map>方式

    mybatis-plus?查詢傳入?yún)?shù)Map,返回List<Map>方式

    這篇文章主要介紹了mybatis-plus?查詢傳入?yún)?shù)Map,返回List<Map>方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 詳解java google Thumbnails 圖片處理

    詳解java google Thumbnails 圖片處理

    這篇文章主要介紹了java google Thumbnails 圖片處理的相關(guān)知識(shí),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • SpringBoot獲取當(dāng)前運(yùn)行環(huán)境三種方式小結(jié)

    SpringBoot獲取當(dāng)前運(yùn)行環(huán)境三種方式小結(jié)

    在使用SpringBoot過程中,我們只需要引入相關(guān)依賴,然后在main方法中調(diào)用SpringBootApplication.run(應(yīng)用程序啟動(dòng)類.class)方法即可,那么SpringBoot是如何獲取當(dāng)前運(yùn)行環(huán)境呢,接下來由小編給大家介紹一下SpringBoot獲取當(dāng)前運(yùn)行環(huán)境三種方式,需要的朋友可以參考下
    2024-01-01
  • Spring Profiles使用方法詳解

    Spring Profiles使用方法詳解

    在你剛接觸SpringBoot的時(shí)候有沒有對它提供的Profile有些許不適應(yīng),經(jīng)過摸索后才領(lǐng)悟到它的強(qiáng)大。今天我就對Profile進(jìn)行一點(diǎn)歸納總結(jié),留作互聯(lián)網(wǎng)記憶
    2022-12-12
  • Java之如何正確地對包裝類進(jìn)行裝箱與拆箱

    Java之如何正確地對包裝類進(jìn)行裝箱與拆箱

    在這篇文章中給大家繼續(xù)講解包裝類的裝箱和拆箱問題。你可能會(huì)很好奇,做java開發(fā),怎么還裝起箱子來了?那么就請大家?guī)е苫笸驴窗?/div> 2023-04-04
  • 詳解Java Fibonacci Search斐波那契搜索算法代碼實(shí)現(xiàn)

    詳解Java Fibonacci Search斐波那契搜索算法代碼實(shí)現(xiàn)

    這篇文章主要介紹了詳解Java Fibonacci Search斐波那契搜索算法代碼實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • 如何用注解的方式實(shí)現(xiàn)Mybatis插入數(shù)據(jù)時(shí)返回自增的主鍵Id

    如何用注解的方式實(shí)現(xiàn)Mybatis插入數(shù)據(jù)時(shí)返回自增的主鍵Id

    這篇文章主要介紹了如何用注解的方式實(shí)現(xiàn)Mybatis插入數(shù)據(jù)時(shí)返回自增的主鍵Id,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 帶你快速搞定java多線程(3)

    帶你快速搞定java多線程(3)

    這篇文章主要介紹了java多線程編程實(shí)例,分享了幾則多線程的實(shí)例代碼,具有一定參考價(jià)值,加深多線程編程的理解還是很有幫助的,需要的朋友可以參考下
    2021-07-07
  • SpringBoot整合SpringSecurity實(shí)現(xiàn)JWT認(rèn)證的項(xiàng)目實(shí)踐

    SpringBoot整合SpringSecurity實(shí)現(xiàn)JWT認(rèn)證的項(xiàng)目實(shí)踐

    本文會(huì)通過創(chuàng)建SpringBoot項(xiàng)目整合SpringSecurity,實(shí)現(xiàn)完整的JWT認(rèn)證機(jī)制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評論