Rumah >Java >javaTutorial >Gunakan fungsi ArrayList.subList() java untuk mendapatkan subsenarai julat ArrayList yang ditentukan

Gunakan fungsi ArrayList.subList() java untuk mendapatkan subsenarai julat ArrayList yang ditentukan

PHPz
PHPzasal
2023-07-24 11:17:121723semak imbas

Gunakan fungsi ArrayList.subList() java untuk mendapatkan subsenarai julat ArrayList yang ditentukan

Dalam pengaturcaraan Java, ArrayList ialah struktur data yang sangat biasa digunakan untuk menyimpan set data dan elemen boleh ditambah atau dipadamkan secara dinamik. Kadangkala, kita perlu mendapatkan beberapa elemen dalam ArrayList, yang boleh dicapai menggunakan fungsi subList(). Takrifan fungsi

subList() adalah seperti berikut:

List<E> subList(int fromIndex, int toIndex)

di mana, fromIndex mewakili indeks permulaan subsenarai (termasuk), dan toIndex mewakili pengakhiran indeks subsenarai (tidak termasuk). Dengan memanggil fungsi ini, kita boleh mendapatkan subsenarai daripada fromIndex kepada toIndex-1. Subsenarai yang dikembalikan ialah contoh Senarai baharu, yang masih menunjuk kepada ArrayList asal, dan pengubahsuaian pada subsenarai akan ditunjukkan dalam ArrayList asal. fromIndex表示子列表的起始索引(包含),toIndex表示子列表的结束索引(不包含)。通过调用这个函数,我们可以获得从fromIndextoIndex-1的子列表。返回的子列表是一个新的List实例,它仍然指向原来的ArrayList,并且对子列表的修改会反映到原来的ArrayList上。

下面是一个对ArrayList进行子列表操作的示例代码:

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

public class ArrayListExample {

    public static void main(String[] args) {
        // 创建一个包含整数的ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(4);
        numbers.add(5);
        
        // 获取ArrayList的子列表
        List<Integer> subList = numbers.subList(1, 4);
        
        System.out.println("原始ArrayList中的元素:");
        for (Integer num : numbers) {
            System.out.print(num + " ");
        }
        System.out.println();
        
        System.out.println("子列表中的元素:");
        for (Integer num : subList) {
            System.out.print(num + " ");
        }
        System.out.println();
        
        // 修改子列表中的元素
        subList.set(0, 10);
        subList.set(1, 20);
        
        System.out.println("修改过后的原始ArrayList中的元素:");
        for (Integer num : numbers) {
            System.out.print(num + " ");
        }
        System.out.println();
    }
}

运行上述代码,输出结果为:

原始ArrayList中的元素:
1 2 3 4 5 
子列表中的元素:
2 3 4 
修改过后的原始ArrayList中的元素:
1 10 20 4 5 

从运行结果可以看出,通过subList()函数获取的子列表对原始ArrayList是有影响的。当我们修改子列表中的元素时,原始ArrayList中对应的元素也会被修改。

需要注意的是,subList()返回的子列表不能进行增加或删除操作,否则会抛出UnsupportedOperationException

Berikut ialah contoh kod untuk operasi subsenarai pada ArrayList:

rrreee

Jalankan kod di atas, hasil output ialah: 🎜rrreee🎜Seperti yang dapat dilihat daripada hasil yang sedang dijalankan, subsenarai yang diperolehi melalui fungsi subList() mempunyai kesan tertentu pada ArrayList asal. Apabila kami mengubah suai elemen dalam subsenarai, elemen yang sepadan dalam ArrayList asal juga akan diubah suai. 🎜🎜Perlu diambil perhatian bahawa subsenarai yang dikembalikan oleh subList() tidak boleh ditambah atau dipadamkan, jika tidak, pengecualian UnsupportedOperationException akan dibuang. 🎜🎜Akibatnya, penggunaan fungsi ArrayList.subList() membolehkan data ArrayList dinilai dengan tepat mengikut julat tertentu, yang memudahkan operasi seterusnya. Apabila menggunakannya, anda perlu memberi perhatian kepada julat indeks dan kesannya pada ArrayList asal untuk mendapatkan, mengubah suai dan memproses elemen dalam subsenarai dengan betul. 🎜

Atas ialah kandungan terperinci Gunakan fungsi ArrayList.subList() java untuk mendapatkan subsenarai julat ArrayList yang ditentukan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn