java - 使用列表,我如何更改此代码以使用列表

标签 java arrays collections

所以我在底部有这段代码,我必须将 myArray 实例化为一个新数组。将 int[] data 中的所有数据复制到 myArray。将 numMoves 设置为等于 0。 data 保存用户输入值的数组。所以我这里的代码是通过使用 int 和 = 符号和 new 来完成的,但现在我需要使用“列表”来更改它,我不知道列表是什么以及如何使用它。所以我需要帮助什么是java上的List以及如何使用List来做到这一点。谢谢,我更喜欢告诉我它是如何工作的,谢谢!

 public class Deletions
{
private int[] myArray;
private int numMoves;

public Deletions(int[] data)
{
    myArray = new int [data.length] ;

    for(int n = 0; n < data.length; n++)
    {
        myArray[n] = data[n]; 
    }

    numMoves = 0;
}

最佳答案

首先,原来的数组复制方法可以这样写。

    int[] myArray = new int[data.length];
    System.arraycopy(data, 0, myArray, 0, data.length);

然后,解决方案将是

public List<Integer> copyToList(int[] data){
    List<Integer> list = new ArrayList<Integer>();
    for (int i = 0; i < data.length; i++) {
        list.add(data[i]);
    }
    return list;
}

public List<Integer> copyFromToList(List<Integer> data){
    return new ArrayList<Integer>(data);
}

关于java - 使用列表,我如何更改此代码以使用列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21841419/

相关文章:

java - java反射方法中的抽象回调

python - 将数组添加到数据框列

c# - 处理 DateTime 的 DBNull 值

java - 检查一个对象是否来自另一个(比如固定的)对象列表的最佳方法是什么?

java - 直接更改行中的单个值

java最终数组小写或大写

java - J框架;首先显示 for 循环中的数组元素 [1],而不是 [0]

javascript - Backbone.js 空数组属性

list - 如何垂直遍历列表?

java - 将变量从 Android 客户端发布到 php 服务器时出错