gpt4 book ai didi

java |将 2D int 数组转换为 2D char 数组以用于 println

转载 作者:行者123 更新时间:2023-12-01 22:11:20 25 4
gpt4 key购买 nike

我正在尝试将二维整数数组转换为二维字符数组。

我通过下面的代码得到了这一点

int[][] boardArray = {
{0x265C, 0x265E, 0x265D, 0x265B, 0x265A, 0x265D, 0x265E, 0x265C},
{0x265F, 0x265F, 0x265F, 0x265F, 0x265F, 0x265F, 0x265F, 0x265F},
{0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0},
{0x2659, 0x2659, 0x2659, 0x2659, 0x2659, 0x2659, 0x2659, 0x2659},
{0x2656, 0x2658, 0x2657, 0x2655, 0x2654, 0x2657, 0x2658, 0x2656}};

char[][] arr = new char[boardArray.length][];
for(int i = 0; i < boardArray.length; i++) {
arr[i] = new char[boardArray[i].length];
for(int j = 0; j < boardArray[i].length; j++){
arr[i][j] = Integer.toString(boardArray[i][j]).charAt(0);
}
}

System.out.println(Arrays.deepToString(arr)
.replaceAll("\\[|,", "")
.replace("] ", ""+System.lineSeparator())
.replace("]]", ""));

限制:

I cant change int[][] boardArray to char][] boardArray

<小时/>

这是我得到的: /image/wHb6L.jpg

这是我应该得到的: /image/QXmWg.jpg

请帮帮我吗?

最佳答案

您的 intchar 转换不正确,应该只需要强制转换。这个

arr[i][j] = Integer.toString(boardArray[i][j]).charAt(0);

应该是

arr[i][j] = (char) boardArray[i][j];

通过这一改变,我得到了一个像这样的棋盘

♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜
♟ ♟ ♟ ♟ ♟ ♟ ♟ ♟




♙ ♙ ♙ ♙ ♙ ♙ ♙ ♙
♖ ♘ ♗ ♕ ♔ ♗ ♘ ♖

关于 java |将 2D int 数组转换为 2D char 数组以用于 println,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58659712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com