最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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è)簡(jiǎn)單的例子進(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ù)組的長(zhǎng)度
  
  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的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MapStruct實(shí)體間轉(zhuǎn)換的簡(jiǎn)單用法

    MapStruct實(shí)體間轉(zhuǎn)換的簡(jiǎn)單用法

    今天小編就為大家分享一篇關(guān)于MapStruct實(shí)體間轉(zhuǎn)換的簡(jiǎn)單用法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • spring boot 下對(duì)JSON返回值去除null和空字段操作

    spring boot 下對(duì)JSON返回值去除null和空字段操作

    這篇文章主要介紹了spring boot 下對(duì)JSON返回值去除null和空字段操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • synchronized?和?Lock?的異同點(diǎn)(如何讓選擇)

    synchronized?和?Lock?的異同點(diǎn)(如何讓選擇)

    這篇文章主要介紹了?synchronized和Lock的異同點(diǎn)(如何讓選擇),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • Java ThreadLocal的使用詳解

    Java ThreadLocal的使用詳解

    ThreadLocal是線程私有的局部變量存儲(chǔ)容器,可以理解成每個(gè)線程都有自己專屬的存儲(chǔ)容器,用來存儲(chǔ)線程私有變量。ThreadLocal 在日常開發(fā)框架中應(yīng)用廣泛,但用不好也會(huì)出現(xiàn)各種問題,本文就此講解一下。
    2021-05-05
  • 基于java Servlet編碼/異常處理(詳解)

    基于java Servlet編碼/異常處理(詳解)

    下面小編就為大家?guī)硪黄趈ava Servlet編碼/異常處理(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • 引入SpringCloud-gateway報(bào)錯(cuò)的解決方案

    引入SpringCloud-gateway報(bào)錯(cuò)的解決方案

    這篇文章主要介紹了引入SpringCloud-gateway報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • jmeter接口測(cè)試之使用rsa算法加密解密的代碼

    jmeter接口測(cè)試之使用rsa算法加密解密的代碼

    這篇文章主要介紹了jmeter接口測(cè)試-使用rsa加密解密算法,部分接口采用了rsa加密算法,我們的jmeter 也是可以直接拿來調(diào)用的,不需要開發(fā)配合去掉加密代碼,需要的朋友可以參考下
    2022-03-03
  • spring+Jpa多數(shù)據(jù)源配置的方法示例

    spring+Jpa多數(shù)據(jù)源配置的方法示例

    這篇文章主要介紹了spring+Jpa多數(shù)據(jù)源配置的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • SpringBoot3集成swagger文檔的使用方法

    SpringBoot3集成swagger文檔的使用方法

    本文介紹了Swagger的誕生背景、主要功能以及如何在Spring Boot 3中集成Swagger文檔,Swagger可以幫助自動(dòng)生成API文檔,實(shí)現(xiàn)與代碼同步,并提供交互式測(cè)試功能,使用方法包括導(dǎo)入依賴、配置文檔、使用常見注解以及訪問生成的Swagger UI和文檔,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • 帶有@Transactional和@Async的循環(huán)依賴問題的解決

    帶有@Transactional和@Async的循環(huán)依賴問題的解決

    這篇文章主要介紹了帶有@Transactional和@Async的循環(huán)依賴問題的解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04

最新評(píng)論

明星| 全州县| 龙门县| 什邡市| 龙门县| 时尚| 芜湖市| 胶南市| 金山区| 江安县| 万荣县| 奎屯市| 桦甸市| 遂平县| 澄迈县| 新巴尔虎右旗| 吴川市| 乐平市| 昔阳县| 庆城县| 古蔺县| 蒲江县| 乳山市| 耒阳市| 巍山| 花莲市| 永昌县| 淳化县| 布尔津县| 正安县| 黄陵县| 五寨县| 维西| 安达市| 澄江县| 新源县| 宜宾市| 湘阴县| 丹凤县| 平远县| 阳原县|