У меня есть следующая строка:
String str = "\nHERE\n\nTHERE\n\nEVERYWHERE\n\n";
Если вы просто напечатаете это, он будет выводиться следующим образом (конечно, \n
не будет "буквально" напечатан):
\n
HERE\n
\n
THERE\n
\n
EVERYWHERE\n
\n
\n
Когда я вызываю метод split("\n")
, я хочу, чтобы все строки между символами новой строки (\n
) даже пустые строки в конце.
Например, если я делаю это сегодня:
String strArray[] = str.split("\n");
System.out.println("strArray.length - " + strArray.length);
for(int i = 0; i < strArray.length; i++)
System.out.println("strArray[" + i + "] - \"" + strArray[i] + "\"");
Я хочу, чтобы он распечатывался так (Output A):
strArray.length - 8
strArray[0] - ""
strArray[1] - "HERE"
strArray[2] - ""
strArray[3] - "THERE"
strArray[4] - ""
strArray[5] - "EVERYWHERE"
strArray[6] - ""
strArray[7] - ""
В настоящее время он печатается следующим образом (выход B), и любые конечные пустые строки пропускаются:
strArray.length - 6
strArray[0] - ""
strArray[1] - "HERE"
strArray[2] - ""
strArray[3] - "THERE"
strArray[4] - ""
strArray[5] - "EVERYWHERE"
Как мне сделать метод split()
включать пустые строки, как в Output A? Я, конечно, мог написать многострочный фрагмент кода, но хотел знать, прежде чем тратить время на его реализацию, если бы был простой способ или дополнительные две строки кода, которые могли бы мне помочь. Спасибо!