java.怎么对长度未知的二维字符数组进行赋值

for(int i=0;i<n;i++) {
String strLine=read.nextLine();
Scanner scanner=new Scanner(Strline);
int j=0;
while(scanner.hasNext()) {
s[i][j++]=scanner.next();
}
}
这个代码是错在哪里?

首先说明第一点,你这个代码只是给了一个片段,无法全局的对你编写的代码评估并确认问题。现在可以修改的是获取控制台输入的代码可以修改为:

Scanner scanner=new Scanner(System.in);
int n = scanner.nextInt();

第二步骤:java.怎么对长度未知的二维字符数组进行赋值,代码完整编写。

主要使用知识点1:接收控制台输入 Scanner scanner=new Scanner(System.in);

主要知识点2:双层for循环解决二维数组的赋值问题

public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.print("请输入一维数组的长度:");
int n = scanner.nextInt();

//换行
System.out.println();

System.out.print("请输入二维数组的长度:");
int m = scanner.nextInt();
//换行
System.out.println();

//创建数组
String[][] strs = new String[n][m];
for (int i = 0; i < strs.length; i++) {
for (int j = 0; j < strs[i].length; j++) {
System.out.print("请输入第"+(i+1)+"个数组的第"+(j+1)+"个元素的值:");
strs[i][j] = scanner.next();
System.out.println();
}

}

System.out.println(strs);
}

温馨提示:答案为网友推荐,仅供参考
相似回答