Что я делаю неправильно в коде, читая String. Пусть следующий String
передается как layout
:Чтение строки из файла
String m = "..z\n"+
"...\n"+
"...\n"+
"...\n"+
"z..\n"+
"";
Мой метод должен возвращать один и тот же результат, но он не возвращает мне ничего, это не Принг ничего. Пожалуйста, не предлагайте использовать StringBuilder
или smth. Может, помогите мне с этим?
public static Shape makeShape(String layout,char displayChar)
{
Shape result;
int height = 0;
int width = 0;
Scanner data = new Scanner(layout);
char[][] temp;
while(data.hasNextLine())
{
String line = data.nextLine();
height = line.length();
width++;
}
temp = new char[height][width];
Scanner data2 = new Scanner(layout);
while(data.hasNextLine())
{
String line2 = data.nextLine();
if(line2.charAt(0) == '.' && line2.charAt(width) == '.')
throw new FitItException("Empty borders!");
else {
for (int r = 0; r < height; r++)
for (int c = 0; c < width; c++) {
//System.out.println(line2.charAt(c));
if (temp[r][c] == '.') {
temp[r][c] = displayChar;
}
System.out.println(line2.charAt(temp[r][c]));
}
}
}
result = new CreateShape(height, width, displayChar);
return result;
}