@[toc]
## 一、什么是ArrarList
ArrayList是Java中的一個(gè)動(dòng)態(tài)數(shù)組類,可以根據(jù)實(shí)際需要自動(dòng)調(diào)整數(shù)組的大小。ArrayList是基于數(shù)組實(shí)現(xiàn)的,它內(nèi)部維護(hù)的是一個(gè)Object數(shù)組,默認(rèn)初始化容量為10,當(dāng)添加的元素個(gè)數(shù)超過(guò)了當(dāng)前容量時(shí),會(huì)自動(dòng)擴(kuò)容。
ArrayList也被廣泛用于Java中的集合框架,例如Java中的List和Vector都是基于ArrayList實(shí)現(xiàn)的。下面是ArrayList常見(jiàn)的方法及其使用方法。
使用場(chǎng)景:
ArrayList適用于需要?jiǎng)討B(tài)添加、刪除元素的場(chǎng)景,可以用于存儲(chǔ)不確定數(shù)量的數(shù)據(jù)。ArrayList也可以用于需要頻繁訪問(wèn)集合元素的場(chǎng)景,因?yàn)樗牡讓邮腔跀?shù)組實(shí)現(xiàn)的,可以通過(guò)索引值快速訪問(wèn)元素。
另外,由于ArrayList是基于數(shù)組實(shí)現(xiàn)的,因此在數(shù)據(jù)量較大時(shí),會(huì)占用較多的內(nèi)存空間,因此需要考慮內(nèi)存的使用。對(duì)于頻繁進(jìn)行插入、刪除操作的場(chǎng)景,可以使用LinkedList來(lái)代替ArrayList。
總之,ArrayList更適合于需要頻繁訪問(wèn)、添加、刪除元素的場(chǎng)景,而LinkedList則更適合于需要頻繁進(jìn)行插入和刪除操作的場(chǎng)景。
## 二、常見(jiàn)方法
| 返回類型 |方法 |描述 |
|--|--|--|
| boolean | add(E o) | 將指定元素追加到此列表的結(jié)尾。|
| void | add(int index, E element) | 將指定的元素插入此列表中的指定位置。 |
| boolean | addAll(Collection<? extends E> c) | 按照指定 Collection 的迭代器所返回的元素順序,將該 Collection 中的所有元素追加到此列表的尾部。 |
| boolean |addAll(int index, Collection<? extends E> c) | 從指定的位置開(kāi)始,將指定 Collection 中的所有元素插入到此列表中。 |
| void | clear() | 從此列表中移除所有元素。 |
| void | ensureCapacity(int minCapacity) | 如有必要,增加此 ArrayList 實(shí)例的容量,以確保它至少能夠容納最小容量參數(shù)所指定的元素?cái)?shù)。 |
| E | get(int index) | 返回此列表中指定位置上的元素。 |
| int| indexOf(Object elem) | 搜索指定參數(shù)第一次出現(xiàn)的位置,使用 equals 方法進(jìn)行相等性測(cè)試。 |
| boolean | isEmpty()| 測(cè)試此列表中是否沒(méi)有元素。 |
| int | lastIndexOf(Object elem) | 返回指定的對(duì)象在列表中最后一次出現(xiàn)的位置索引。 |
| E | remove(int index) | 移除此列表中指定位置處的元素。 |
| boolean | remove(Object o) | 從此列表中移除指定元素的單個(gè)實(shí)例(如果存在),此操作是可選的。 |
| protected void | removeRange(int fromIndex, int toIndex) | 移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之間的所有元素。 |
| E | set(int index, E element) | 用指定的元素替代此列表中指定位置上的元素。 |
| int | size() | 返回此列表的元素?cái)?shù)。 |
下面是一個(gè)示例代碼:
### add()方法:
在ArrayList末尾添加元素或在指定位置添加。
```java
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("orange");
System.out.println(list);
}
}
```
輸出結(jié)果為:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-747739.html
```
[apple, banana, orange]
```
### get()方法:
獲取指定位置元素。
```java
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("orange");
String fruit = list.get(1);
System.out.println(fruit);
}
}
```
輸出結(jié)果為:
```
banana
```
### remove()方法:
刪除指定位置或指定元素。
```java
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("orange");
list.remove(1);
System.out.println(list);
list.remove("orange");
System.out.println(list);
}
}
```
輸出結(jié)果為:
```
[apple, orange]
[apple]
```
### size()方法:
獲取ArrayList的元素個(gè)數(shù)。
```java
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("orange");
int size = list.size();
System.out.println(size);
}
}
```
輸出結(jié)果為:
```
3
```
### set()方法:
替換指定位置的元素。
```java
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("orange");
list.set(1, "pear");
System.out.println(list);
}
}
```
輸出結(jié)果為:
```
[apple, pear, orange]
```
### indexOf()方法:
查找指定元素的位置。
```java
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("orange");
int index = list.indexOf("banana");
System.out.println(index);
}
}
```
輸出結(jié)果為:
```
1
```
### clear()方法:
清空ArrayList中的所有元素。
```java
import java.util.ArrayList;
public class ArrayListDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("orange");
list.clear();
System.out.println(list);
}
}
```
輸出結(jié)果為:
```
[]
```
有不好的地方,可以指出大家一起共同進(jìn)步文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-747739.html
到了這里,關(guān)于java集合框架(三)ArrayList常見(jiàn)方法的使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!