Есть ли способ получить карту java.awt.Point
s от String? Или даже просто одна точка на этой Строке. Например, для "xyz123\nabc123"
координата (0, 1)
будет 'a'
.Java Получить карту X-Y Координаты со строки
0
A
ответ
0
Там нет ничего встроенные для этого.
Вы можете попробовать и разобрать эту строку в 2D-массив или вектор массивов символов (в зависимости от того, знаете ли вы, сколько строк в целом или нет).
Учитывая «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'
+0
Спасибо, что это прекрасно. –
0
Это можно сделать, но это не общее представление, поэтому не ожидайте, что оно будет выполнено.
Строка не отличается от массив символов, так это может помочь вам:
0
Не вдаваясь в вопрос ваш мотив, но вот один из способов:
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
Может быть, это я, но я не понимаю ваш вопрос. Как «xyz123 \ nabc123» указывает, что (0,2) и (1,2) являются y? –
Извините, я так плохо сформулировал. Я изменил вопрос –