Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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 我需要将int[][]转换为char[][]或创建相同维度的char[][]_Java_Arrays_Char_Int_2d - Fatal编程技术网

Java 我需要将int[][]转换为char[][]或创建相同维度的char[][]

Java 我需要将int[][]转换为char[][]或创建相同维度的char[][],java,arrays,char,int,2d,Java,Arrays,Char,Int,2d,我有一个int[][],它将由一个文件初始化,所以我不知道它的大小。如何将其转换为2D字符数组或创建相同大小的字符[][] 这样做对吗?我该怎么做 int[][] shade = <a method returns an int[][]> char[][] converted = new int[shade.length][]; for(int i = 0; i < shade.length; i++) { converted[i] = new String[shad

我有一个int[][],它将由一个文件初始化,所以我不知道它的大小。如何将其转换为2D字符数组或创建相同大小的字符[][]

这样做对吗?我该怎么做

int[][] shade = <a method returns an int[][]>

char[][] converted = new int[shade.length][];
for(int i = 0; i < shade.length; i++) {
    converted[i] = new String[shade[i].length];
    for(int j = 0; j < shade[i].length; j++){
        converted[i][j] = Character.toInt(shade[i][j]);
    }
}
int[]]shade=
char[][]converted=new int[shade.length][];
对于(int i=0;i
您可以这样做:

String[][] converted = new String[a.length][];
for(int index = 0; index < a.length; index++) {
    converted[index] = new String[a[index].length];
    for(int subIndex = 0; subIndex < a[index].length; subIndex++){
        converted[index][subIndex] = Integer.toString(a[index][subIndex]);
    }
}
String[][]已转换=新字符串[a.length][];
for(int index=0;index
首先,您需要确认需要哪种字符

我想你需要将int转换成一个用ASCII表示的字符,这意味着65将被转换成“a”,你可以使用typecast,比如

int intvalue=65;
char c=(char)intvalue;//will be 'A'
如果要将5转换为“5”(但需要确保intvalue在[0,9]范围内),请使用

以下是您的案例从int到char的方式,用ASCII表示:

public static void main(String agrs[]) {

    int[][] shade = getIntArray();//here is how you 

    char[][] converted = new char[shade.length][shade[0].length];//use the shade's row and column length to declare an char[][] array

    for (int i = 0; i < shade.length; i++) {
        for (int j = 0; j < shade[i].length; j++) {
            converted[i][j] = ((char) shade[i][j]);
            System.out.println(converted[i][j]);//out put will be 'A'
        }
    }
}

//here you need to replace it into your own method, now I pretend that I returns a [2][2] array which holds value of 65 ('A')
private static int[][] getIntArray(){

    int[][] array=new int[2][2];
    for(int i=0;i<array.length;i++)
        for(int j=0;j<array[i].length;j++){
            array[i][j]=65;
        }
    return array;

}
publicstaticvoidmain(字符串agrs[]){
int[][]shade=getIntArray();//以下是您的操作方法
char[][]converted=new char[shade.length][shade[0.length];//使用shade的行和列长度声明char[][]数组
对于(int i=0;i对于(int i=0;ii如果int数组为[[1,2]],您希望字符数组为['1'、'2']还是转换为ASCII?
public static void main(String agrs[]) {

    int[][] shade = getIntArray();//here is how you 

    char[][] converted = new char[shade.length][shade[0].length];//use the shade's row and column length to declare an char[][] array

    for (int i = 0; i < shade.length; i++) {
        for (int j = 0; j < shade[i].length; j++) {
            converted[i][j] = ((char) shade[i][j]);
            System.out.println(converted[i][j]);//out put will be 'A'
        }
    }
}

//here you need to replace it into your own method, now I pretend that I returns a [2][2] array which holds value of 65 ('A')
private static int[][] getIntArray(){

    int[][] array=new int[2][2];
    for(int i=0;i<array.length;i++)
        for(int j=0;j<array[i].length;j++){
            array[i][j]=65;
        }
    return array;

}