【发布时间】:2023-04-08 18:31:01
【问题描述】:
如何在 Java 中创建一个二维字符数组?我正在研究这是否适用于我的地图目标,您可以在地图上移动角色,但没有发现任何有用的东西。我以前用 C++ 做过这个(有一点帮助),虽然不知道如何用 Java 做。
对于 C++ 版本,我从一维字符串数组开始:
"#######.#.~~~####.##.......~~~..##.~~....H....######..#######",
"#####..T.#~~~..##.H......~~~...#..T.~~.........######.###....",
"######..~~~~#######...#..~~~.........~~~.##.###..#####.###...",
"...###..~~~.######...##H.~~~.@........~~.#.####...##.H.###...",
".#####..~~.~~###C.....#..~~~.....#...~~~..###..#....##....#..",
"######....~~~.~.##....#..~~~.....#....~~~.#######C...........",
"#######.H..~.~~~~#....#..~~~.....###...~~~.##########........",
"########.H...~~~~~.....~~~......H..##....~~~.H######...T...##",
(你是@符号) 然后能够将每个字符串分解为单独的字符,使用 2 个嵌套的 for 循环将其分解为基本上可以移动角色的二维数组。
这是一个很好的方法吗,如果是的话怎么做? (我现在花了 10 个小时试图让一个基本版本工作)。有没有更好的方法来做到这一点?我想稍后用这样的地图创建一个非常复杂的游戏,但需要帮助来解决问题。
【问题讨论】:
-
您需要嵌套的 for 循环遍历该字符串的每一行,然后将每个
.charAt(index)放入数组中的某个位置。记住二维数组是array[rows][cols] = string.charAt(x)
标签: java arrays string multidimensional-array maps