将2d char数组转换为String

时间:2017-04-24 01:40:13

标签: java

我正在尝试将这个2d char数组转换为String。问题是它输出的是100,000个字符,即使输入数组也没有。将2d char数组转换为字符串的正确方法是什么?

buff = (unsigned char *) skb->data;
for (i=0;i<60;i++) printk("%d.", buff[i]);
printk("\n");

2 个答案:

答案 0 :(得分:3)

你的内循环有问题,而且我也没有看到你实际上是从2D角色数组中隐藏了一个字符串。这是内循环的问题:

for (int j=0; i < maze[i].length; j++) {
        //   ^^^^ this will always be true for certain values of i
        // it should be j < maze[i].length
    s= maze.toString();;
}

换句话说,你的内环可能永远在旋转,这取决于迷宫的界限。相反,请尝试以下代码:

public String printMaze(char[][] maze) {
    String s = "";
    for (int i=0; i < maze.length; i++) {
        for (int j=0; j < maze[i].length; j++) {
            s += maze[i][j];
        }
        // uncomment next line if you want the maze to have rows
        // s += "\n";
    }
    return s.toString();
}

但正如@ElliottFrisch所提到的,你可以返回Arrays.deepToString(maze)

答案 1 :(得分:-1)

希望这会有所帮助..

-webkit-overflow-scrolling: auto;