Java中ArrayList類用法詳解
基本定義
ArrayList 是 Java 中的一個動態(tài)數(shù)組數(shù)據(jù)結(jié)構(gòu),屬于 Java 集合框架的一部分(java.util 包中的類)。它提供了一個基于數(shù)組的可變長度列表,允許你在運行時添加、刪除和訪問元素,而不需要提前指定數(shù)組的大小。
簡而言之:它是Java函數(shù)庫中數(shù)百個類中的一個,可以將它直接當作自己的類使用
ArrayList類的基礎(chǔ)(部分)方法
add(Object elem):向list中加入對象參數(shù),即在 ArrayList 的末尾添加新元素
add(int index, Object elem):在index對應的下標中添加elem對象
remove(int index):移除對應索引的對象
remove(Object elem):移除該對象,默認只是移除第一個匹配的對象
contains(Object elem):檢查是否包含該對象:有的話返回"true",否則返回"false"
isEmpty():如果list中沒有元素則返回"true"
indexOf(Object elem):如果存在該對象,則返回對應下標,如果不存在,則返回-1
size():返回ArrayList當前的大小
get(int index):返回當前索引參數(shù)的對象
下面來舉個例子來解釋一下ArrayList的方法使用吧:
import java.util.ArrayList;
class Egg {
}
public class testArrayList {
public static void main(String[] args) {
//1.創(chuàng)建:<括號>代表創(chuàng)建出Egg類型的basket
//新的ArrayList對象會創(chuàng)建在堆上
ArrayList<Egg> basket = new ArrayList<Egg>();
//2.加入元素
//此ArrayList會產(chǎn)生一個"筐子"來放Egg對象
Egg s = new Egg();
basket.add(s);
//3.再加入元素
//此ArrayList會再次整一個筐子來存放Egg對象
Egg b = new Egg();
basket.add(b);
//4.查詢大小
//因為basket含有兩個元素,size()會返回2
int theSize = basket.size();
//5.查詢特定元素
//因為basket帶有s所引用的Egg對象,所以此方法會返回true
boolean isIn = basket.contains(s);
//6.查詢特定元素的位置
//b是創(chuàng)建的第二個對象,因此返回1
int idx = basket.indexOf(b);
//7.判斷集合是否為空
//因為不是空的,所以返回false
boolean empty = basket.isEmpty();
//8.刪除元素
basket.remove(s);
}
}比較ArrayList與一般數(shù)組
一般數(shù)組在創(chuàng)建時必須指定大小
但對于ArrayList來說,你只需要創(chuàng)建出此類型的對象就行。它不需要指定大小,因為他會在加入或刪除元素時自動調(diào)整大小。
new String[2] //指定大小
new ArrayList<String>() //不需要指定大小
存放對象給一般數(shù)組時必須指定位置
(必須要指定介于0到比length小1之間的數(shù)字)
myList[1] = b;//指定索引值
如果索引值超出了數(shù)組的限制(例如聲明大小為2的數(shù)組,然后指派索引值3),程序會在執(zhí)行期出現(xiàn)錯誤。
使用ArrayList時,你可以用add(Int, Object)這個形式來指定索引值,或者使用add(Object)的形式來給它自行管理大小。
myList.add(b);//不需指定索引值
一般數(shù)組使用特殊的語法
但ArrayList是個普通對象,所以不會有特殊的語法。
myList[1]//[方括號]是指用在數(shù)組上的特殊語法
在Java5.0中的ArrayList是參數(shù)化的
雖然我們說ArrayList不想一般數(shù)組有特殊的語法,但是它們在Java5.0中有比較特殊的東西-參數(shù)化類型。
ArrayList<String> //<String>是類型參數(shù)。這代表String的集合,就像說ArraysList<Egg>代表Egg的集合
在Java5.0之前是無法聲明出要存放于ArrayList中元素的類型,它只會是異質(zhì)對象的集合
總結(jié)
到此這篇關(guān)于Java中ArrayList類用法的文章就介紹到這了,更多相關(guān)Java ArrayList類詳解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IDEA啟動報錯Internal?error.?Please?refer?to?https://jb.gg/i
這篇文章主要介紹了IDEA啟動報錯Internal?error.?Please?refer?to?https://jb.gg/ide/critical-startup-errors解決辦法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-04-04
Spring的Bean生命周期之BeanDefinition詳解
這篇文章主要介紹了Spring的Bean生命周期之BeanDefinition詳解,在spring bean創(chuàng)建過程 依賴 BeanDefinition 中的信息處理bean的生產(chǎn),BeanDefinition 是 Spring Framework 中定義 Bean 的配置元信息接口,需要的朋友可以參考下2023-12-12
maven使用systemPath方式加載本地jar的實現(xiàn)
本文介紹Maven通過systemPath加載本地第三方JAR的方法,需配置依賴和插件以確保打包和運行,具有一定的參考價值,感興趣的可以了解一下2025-06-06
Springboot實現(xiàn)XSS漏洞過濾的示例代碼
這篇文章主要介紹了Springboot實現(xiàn)XSS漏洞過濾的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-01-01

