在Java中使用值初始化ArrayList

时间:2020-02-23 14:42:18  来源:igfitidea点击:

在本文中,我们将学习在Java中使用值初始化ArrayList。
ArrayList java中是一个实现 List的接口的类

它用于存储元素。
它基于相应的动态阵列概念。
我们可以以多种方式初始化与值的arraylist。
让我们用例子看一些他们。

使用arrays.aslist()

我们可以用 Arrays.asList()方法并将其传递给ArrayList的构造函数,以初始化ArrayList以Java中的值。

当我们已经有数据收集时,这种方法很有用。

使用字符串值初始化ArrayList

import java.util.Arrays;
import java.util.List;
public class Main
{   
    public static void main(String args[]) 
    {
        ArrayList<String> list = new ArrayList<>(Arrays.asList(
                "Apple",
                "Mango",
                "Orange"
                ));
        for (String item : list) {
            System.out.println(item);
        }
    }
}

输出:

Apple
Mango
Orange

当你通过时 Arrays.asList()到ArrayList构造函数,我们将得到 ArrayList对象,我们可以修改 ArrayList你想要的方式。

如果您正在使用数组.asList()如果没有ArrayList构造函数来初始化列表,则在创建列表后不能从结构上修改列表

import java.util.Arrays;
import java.util.List;
public class Main
{   
    public static void main(String args[]) 
    {
        List<String> list = Arrays.asList(new String[]{
                "Apple",
                "Mango",
                "Orange"
                });
        list.add("Banana");     
        for (String item : list) {
            System.out.println(item);
        }
    }
}
 
					

输出:

Exception in thread “main" java.lang.UnsupportedOperationException
    at java.util.AbstractList.add(AbstractList.java:148)
    at java.util.AbstractList.add(AbstractList.java:108)
    at Main.main(Main.java:13)

虽然你可以用列表.set()更改元素的方法。

import java.util.Arrays;
import java.util.List;
public class Main
{   
    public static void main(String args[]) 
    {
        List<String> list = Arrays.asList(new String[]{
                "Apple",
                "Mango",
                "Orange"
                });
        list.set(1,"Banana");       
        for (String item : list) {
            System.out.println(item);
        }
    }
}

输出:

Apple
Banana
Orange

如你所见,列表的第二个元素从Mango变成了Banana

使用用整数值绑定ArrayList

ArrayList<Integer> integerlist = new ArrayList<>(Arrays.asList(10,20,30,40,50));

使用浮点值初始化ArrayList

ArrayList<Integer> integerlist = new ArrayList<>(Arrays.asList(10.2f,20.4f,30.2f,40.9f,50.4f));

在Java 8中使用Stream

如果我们正在使用Java 8或者更高版本,那么我们可以使用 of()流初始化的流方法

ArrayList在Java。
请参阅下面的示例。

import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main
{   
    public static void main(String args[]) 
    {
        List<String> list = Stream.of(
                "Apple",
                "Mango",
                "Orange"
                ).collect(Collectors.toList());
        for (String item : list) {
            System.out.println(item);
        }
    }
}

输出

Apple
Mango
Orange

我们可以使用此方法从列表中添加或者删除元素。

在Java 9中使用工厂方法

在Java 9中,Java添加了一些工厂方法 List接口在Java中创建不可变列表。

它可用于初始化 ArrayList在单行语句中的值。

import java.util.List;
public class Main
{   
    public static void main(String args[]) 
    {
        List<String> list = List.of(
                "Apple",
                "Mango",
                "Orange"
                );
        for (String item : list) {
            System.out.println(item);
        }
    }
}

输出

Apple
Mango
Orange