java - 在 List(两种变体)、Set(两种变体)、Queue、Deque 中转换 int、long、boolean、String、double

标签 java arrays generics collections

我有一个将数组转换为 ArrayList 的方法,如下所示:

public class Main {

    //https://docs.oracle.com/javase/tutorial/extra/generics/methods.html
    public static <T> void fromArrayToCollection(T[] a, Collection<T> c) {
        for (T o : a) {
            c.add(o);
        }
    }

    public static void main(String[] args) {
        Car [] cars = new Car[2];
        cars[0] = new Car(1, "Volvo", "2612AXA");
        cars[1] = new Car(2, "Toyota", "1861AXA");

        int [] i = new int[2];
        i[0] = 1;
        i[1] = 1;

        long [] l = new long[2];
        l[0] = 122342141;
        l[1] = 214214211;

        double [] d = new double[2];
        d[0] = 1.0;
        d[1] = 2.0;

        boolean [] b = new boolean[2];
        b[0] = true;
        b[1] = false;

        String [] s = new String[2];
        s[0] = "One";
        s[1] = "Two";

        Collection<String> sc = new ArrayList<String>();
        fromArrayToCollection(s, sc);
        System.out.println(sc);

    }
}

转换其他类型的数组很容易。但我有一些包含三个字段的类(class)。

public class Car {
    int id;
    String car_name;
    String number;

    public Car(int id, String car_name, String number) {
        this.id = id;
        this.car_name = car_name;
        this.number = number;
    }

    @Override
    public String toString() {
        return "Car{" +
                "id=" + id +
                ", car_name='" + car_name + '\'' +
                ", number='" + number + '\'' +
                '}';
    }
}

如何将数组汽车转化为集合?如何使用迭代器将所有数组转换为集合?谢谢。

最佳答案

Car[] carsArray = new Car[2];

... 

List<Car> listOfCars = Arrays.asList(carsArray);

关于java - 在 List(两种变体)、Set(两种变体)、Queue、Deque 中转换 int、long、boolean、String、double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32299629/

相关文章:

Java泛型错误

java - 参数化通用 Java 事件处理程序的正确方法

java - GWT基本架构

java - 当 aws autoscaling 组成员被销毁并且有未完成的 Spring 异步线程在执行操作时会发生什么?

python - Numpy - 查找自定义 A nxn 矩阵和 B nx1 的乘积 Ax=b

java - Java泛型中如何使用逆变?

java - 尝试运行引用库的精简版本时出现 ClassNotFoundException

java - 如何在 Intellij 中创建和运行 Vaadin+Jetty+Gradle 项目?

javascript - 不可点击可触摸可突出显示

javascript - 如何通过id过滤并获取数组?