一、方法介紹
.get()方法是Java編程語言中常用的方法之一,該方法用於獲取集合中指定位置上的元素。該方法使用索引值作為參數來訪問集合中的元素,索引值從0開始。
該方法的簽名如下:
public E get(int index)
其中E表示集合中元素的類型,而index表示元素在集合中的位置。
二、使用示例
下面是.get()方法的使用示例:
import java.util.ArrayList;
import java.util.List;
public class GetMethodDemo {
public static void main(String[] args) {
List list = new ArrayList();
list.add("apple");
list.add("banana");
list.add("orange");
// 獲取集合中的第1個元素
String firstElem = list.get(0); // 結果是"apple"
System.out.println(firstElem);
// 獲取集合中的第3個元素
String thirdElem = list.get(2); // 結果是"orange"
System.out.println(thirdElem);
}
}
在上面的示例中,我們首先創建了一個字符串類型的List集合,並向其中添加了三個元素。隨後,我們分別使用.get()方法獲取了集合中的第一個和第三個元素,並將結果打印輸出。
三、方法使用注意事項
.get()方法在訪問集合元素時需要指定元素的位置,因此需要確保傳入的索引值不超出集合的範圍,否則會拋出IndexOutOfBoundsException異常。
下面是一個使用.get()方法時注意事項的示例:
import java.util.ArrayList;
import java.util.List;
public class GetMethodDemo {
public static void main(String[] args) {
List list = new ArrayList();
list.add("apple");
list.add("banana");
list.add("orange");
// 獲取集合中的第4個元素,會拋出IndexOutOfBoundsException異常
String fourthElem = list.get(3);
System.out.println(fourthElem);
}
}
在上面的示例中,我們試圖通過.get()方法獲取集合中的第四個元素,但是實際上集合中只有三個元素,因此會拋出IndexOutOfBoundsException異常。
四、方法的性能分析
.get()方法是ArrayList類中常用的方法之一,在使用時需要注意該方法的時間複雜度。由於ArrayList類的底層實現是數組,因此.get()方法的時間複雜度為O(1),即常數時間。
下面是一個比較.get()方法和.iterator()方法的性能差異的示例:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class GetVsIteratorDemo {
private static final int ITERATIONS = 1000000;
public static void main(String[] args) {
// 初始化一個包含1000萬個元素的列表
List list = new ArrayList(ITERATIONS);
for (int i = 0; i < ITERATIONS; i++) {
list.add(i);
}
// 使用.get()方法遍歷列表
long startTime = System.currentTimeMillis();
for (int i = 0; i < ITERATIONS; i++) {
int elem = list.get(i);
}
long endTime = System.currentTimeMillis();
long elapsedTime = endTime - startTime;
System.out.println(".get()方法遍歷列表所需時間:" + elapsedTime + "毫秒");
// 使用.iterator()方法遍歷列表
startTime = System.currentTimeMillis();
Iterator<Integer> it = list.iterator();
while (it.hasNext()) {
int elem = it.next();
}
endTime = System.currentTimeMillis();
elapsedTime = endTime - startTime;
System.out.println(".iterator()方法遍歷列表所需時間:" + elapsedTime + "毫秒");
}
}
在上面的示例中,我們初始化了一個包含1000萬個元素的列表,並分別使用.get()方法和.iterator()方法遍歷該列表。在我的電腦上,.get()方法遍歷列表所需的時間大約是2毫秒,而.iterator()方法遍歷列表所需的時間大約是40毫秒。這表明,在ArrayList類中使用.get()方法遍歷列表的效率明顯高於使用.iterator()方法。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/192455.html
微信掃一掃
支付寶掃一掃