java二维字符数组怎么定义

Python014

java二维字符数组怎么定义,第1张

二维字符串数字可以定义为“String [][]”

举例:

String[][] list={{"1","张三"},{"2","李四"},{"3","王五"}}这个的意思就是1行1列的值为“1”、2行1列的值为“2”、3行1列的值为“3”、1行2列的值为“张三”、2行2列的值为“李四”、3行2列的值为“王五”。也可以通过list[0][0]的形式来获取到1行1列的值为“1”,以此类推即可。

String str="abcdefg"

char[] stringArray=str.toCharArray()

double n=(double)Math.sqrt(str.length())

int num=(int)Math.ceil(n)

char square[][]=new char[num][num]

int i=0

for(int row=0row <num &&i <str.length()row++) {

for(int column=0column <num &&i <str.length()column++) {

square[row][column]=stringArray[i]

System.out.print(square[row][column] + " ")

i++

}

System.out.println("")

}

你的这个逻辑有问题,不要最外面那个for了

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

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 = 0i <strs.lengthi++) {

for (int j = 0j <strs[i].lengthj++) {

System.out.print("请输入第"+(i+1)+"个数组的第"+(j+1)+"个元素的值:")

strs[i][j] = scanner.next()

System.out.println()

}

}

System.out.println(strs)

}