Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
填充Java 2D数组输入_Java_Arrays_Input - Fatal编程技术网

填充Java 2D数组输入

填充Java 2D数组输入,java,arrays,input,Java,Arrays,Input,我试图在2D数组中获取用户输入。如果可能的话,我不想使用java.util.array 用户输入如下所示,第一个整数是数字,第二个整数是整数的索引 3 3 1 2 3 2 这就是我得到的 [3,3,1][2,3,2][][][][] 这就是我想要的 [][1,3][3][][][] intx=sc.nextInt(); int数组[][]=新的int[6][x]; 对于(int i=0;i

我试图在2D数组中获取用户输入。如果可能的话,我不想使用
java.util.array

用户输入如下所示,第一个整数是数字,第二个整数是整数的索引

3 3
1 2
3 2
这就是我得到的

[3,3,1][2,3,2][][][][]
这就是我想要的

[][1,3][3][][][]

intx=sc.nextInt();
int数组[][]=新的int[6][x];
对于(int i=0;i
我想你指的是格式:

number index_to_add
这并不简单,因为您不知道在开始时数组中有多少个数字

我会使用类似于
ArrayList
等的集合

如果你真的只想使用数组,你必须有一个上限

ArrayList版本:

ArrayList<Integer>[] list = new ArrayList<Integer>[6];

//init
for(int i=0;i<list.length;i++){
    list[i] = new ArrayList<Integer>();
}

//fill
while(sc.hasNextInt()){
    int number = sc.nextInt();
    if(sc.hasNextInt()){
        int index_to_add = sc.nextInt();
        list[index_to_add].add(number);
    }else{
        break;
    }
}
ArrayList[]list=新的ArrayList[6];
//初始化

对于(int i=0;i输入和输出之间的逻辑是什么?第一个int是数字,第二个int的索引。谢谢你的回答,我已经有一个版本完成了数组并正在运行。我只是想知道是否可以不使用它们。我想我会使用它们。如果你想使用数组,你必须知道,将有多少个数字插入到每个子数组中。然后,您必须有另一个数组(1D),其中将存储上次插入的索引-您必须知道将把整数放在哪个索引上。这并不是很复杂。在这种情况下,集合会更好。回答您的问题“是否可以不使用它们?”我的回答:当然是,但这将是一个全新的轮子——你将自己实现LinkedList或类似的东西:P@Ohook
ArrayList<Integer>[] list = new ArrayList<Integer>[6];

//init
for(int i=0;i<list.length;i++){
    list[i] = new ArrayList<Integer>();
}

//fill
while(sc.hasNextInt()){
    int number = sc.nextInt();
    if(sc.hasNextInt()){
        int index_to_add = sc.nextInt();
        list[index_to_add].add(number);
    }else{
        break;
    }
}