文字列から s のマップを取得する方法はありますjava.awt.Point
か? または、その文字列上の単一のポイントでも。たとえば、"xyz123\nabc123"
座標(0, 1)
は になります'a'
。
1994 次
3 に答える
0
そのために組み込まれているものは何もありません。
その文字列を 2D char 配列または char 配列のベクトルに解析してみることができます (合計の行数がわかっているかどうかによって異なります)。
「xyz123\nabc123」を次のように指定するとstr
:
//split it by newline, should work on windows/unix
String lines[] = str.split("\\r?\\n");
char[][] map = new char[lines.length][];
//fill up map, each row is a new line
for(int i = 0; i < lines.length; i ++)
map[i] = lines[i].toCharArray();
//map[0][2] returns 'z'
于 2012-03-18T03:05:15.487 に答える
0
あなたの動機に疑問を呈するつもりはありませんが、ここに1つの方法があります:
String find(String[] a, int x, int y) {
try {
return String(a[x].charAt(y)); // or y+1 in your example
}
catch (Exception exc) {
return NULL;
}
}
...
String s = "xyz123\nabc546";
String[] sa = s.split("\\n");
find(sa, 0, 0); // returns "x"
find(sa, 1, 2); // returns "c"
find(sa, 3, 2); // returns NULL
于 2012-03-18T03:05:35.673 に答える
0
実行できますが、一般的な表現ではないため、実行されるとは思わないでください。
String は char 配列とそれほど変わらないため、これらが役立つ場合があります。
于 2012-03-18T02:58:59.750 に答える