gpt4 book ai didi

java - 一维数组 -> 二维数组

转载 作者:行者123 更新时间:2023-12-01 19:47:28 25 4
gpt4 key购买 nike

所以我是初学者;任务是将给定的字符串转换为数组,该字符串始终将第一个字符作为行数,第二个字符作为列数。

我的问题是解决如何将字符串 's' 的其余部分从 1D 数组移动到 2D 数组中。

提前致谢!

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);

String[] s = scanner.nextLine().split(" ");
int arows = Integer.parseInt(s[0]);
int acols = Integer.parseInt(s[1]);


int[][] cells = new int[arows][acols];

for (int col = 0; col < acols; col++){
for (int row = 0; row <= arows;row++){
cells[row][col] = Integer.parseInt(s[2]);
}
}
}
}

最佳答案

您需要为 for 循环实现一个计数器,以迭代输入字符串。您现在正在做的是用字符串的第三个元素填充二维数组。

一种解决方案是仅声明一个变量 i = 2,并为内部 for 循环的每次传递递增它。

int i = 2
for (int col = 0; col < acols; col++){
for (int row = 0; row < arows;row++){
cells[row][col] = Integer.parseInt(s[i]);
i++;
}
}

编辑:删除行循环中的<=,将索引的初始值更改为2

关于java - 一维数组 -> 二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52668054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com