java二维字符串数组
1. java 二维数组和字符串相互转化
package test;
public class ArrayToStringTest {
public static void main(String[] args) {
int[][] array = new int[4][4];
int count = 0;
ArrayToStringTest test = new ArrayToStringTest();
// 赋值一个int[][]
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
array[i][j] = count;
++count;
}
}
// 获取row,col
int row = test.getRow(array);
int col = test.getCol(array);
// 转为String
String str = test.convertToString(array, row, col);
System.out.println(str); // 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,
//转为int[][]
int[][] arrayConvert = new int[row][col];
arrayConvert = test.convertToArray(str, row, col);
}
public int getRow(int[][] array) {
int row = 0;
if (array != null) {
row = array.length; // 行
}
return row;
}
public int getCol(int[][] array) {
int col = 0;
if (array != null) {
col = array[0].length; // 列
}
return col;
}
public String convertToString(int[][] array, int row, int col) {
String str = "";
String tempStr = null;
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
tempStr = String.valueOf(array[i][j]);
str = str + tempStr + ",";
}
}
return str;
}
public int[][] convertToArray(String str, int row, int col){
int[][] arrayConvert = new int[row][col];
int count = 0;
String[] strArray = str.split(",");
for(int i = 0 ; i < row ; i ++){
for(int j = 0 ; j < col ; j ++){
arrayConvert[i][j] = Integer.parseInt(strArray[count]);
++ count ;
}
}
return arrayConvert;
}
}
2. java中如何创建字符串数组
java中定义一个字符串数组方式如下:
1.String[] str={"AAA","BBB","CCC"};
2.String str[]={"AAA","BBB","CCC"};
string类型和其他基本类型相似,创建数组时,有上述两种方式。
数组可以分为一维数组和二维数组;
一维数组的语法格式:
数组元素类型 数组名[ ]={数组元素的初值,。。。}
如: int sa[]={1,2,3}
二维数组声明的语法格式:
数组元素类型 数组名[ ][ ]
如:int a[][]=new int [2[3]
都是一个原理的,自己换一下自己想要定义的数组类型就可以了。
字符串数组的创建:
String a =new String("Java");
不过推荐用ArrayList strArray = new ArrayList (); 比较灵活。
3. java中如何遍历字符串二维数组
String[][] temp = null ;
这句可以能有问题,你将String[][]temp初始化一下再试一试
4. java如何将没有规则字符串导入二维数组
public class {public static void main(String[]args){String s="1,2,3,4,5,6,7,8,9";/定义变量s/int[][] a=new int[3][3];/定义数组a/String[]b=s.split(",");/类型转换/for(int i=0,j=0,k=0;i)/for语句,定义i,j,k,表数组样式/a[j][k++]=Integer.parseInt(b[i]);if(k==3){j++;k=0;}}//打印出来for(int[]c:a){for(int n:c){System.out.print(n+" ");/输出/}System.out.println();}}}
5. java写一个二维数组,里面有字符,字符串,还有值,怎么定义和使用如下
//都当做字符串
String[][]arr={{"a","b","cd","eefg"},{"1","2"}};
//或者定义为Object类型数组
Object[][]brr={{"a","b","cd","eefg"},{1,2},{'a','b'}};
6. java里字符串数组是二维数组么
不是,二维数组是这样定义的
int
a[][]
=
new
int[3][5];//分配一个三行五列的二维数组。
7. java字符串排列成二维数组
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=0; row < num && i < str.length(); row++) {
for(int column=0; column < num && i < str.length(); column++) {
square[row][column]=stringArray[i];
System.out.print(square[row][column] + " ");
i++;
}
System.out.println("");
}
你的这个逻辑有问题,不要最外面那个for了
8. 用java从键盘输入10个字符串存入到一个二维字符数组中,找出其中最大的字符中并输出
publicstaticvoidmain(String[]args){
Scannerscanner=newScanner(System.in);
Stringstr=scanner.nextLine();//从键盘输入一系列的字符
char[]cs=str.toCharArray();//将输入的所有内容转换到数组中
Arrays.sort(cs);//对数组进行从小到大的排序
System.out.println(cs[cs.length-1]);//输出数组的最后一个元素,即最大的字符
}
希望对你有帮助。望采纳。
9. java.怎么对长度未知的二维字符数组进行赋值
首先说明第一点,你这个代码只是给了一个片段,无法全局的对你编写的代码评估并确认问题。现在可以修改的是获取控制台输入的代码可以修改为:
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);
}