Java: метод split () со специальным символом канала
У меня есть строка = "Hello-new-World". И когда я использую метод split () с различными значениями регулярных выражений, он действует по-разному.
String str = "Hello-new-world"
String[] strbuf=str.split("-");
for(int i=0;i<strbuf.length;i++)
System.out.print(strbuf[i]+" ");
Вывод, который я получаю:
hello
new
world
тогда как, если я изменю свою строку на «Hello | new | world», я получу совершенно другой ответ. Новый вывод становится:
h
e
l
l
o
|
n
e
w
|
w
o
r
l
d
Может кто-нибудь объяснить, что может быть причиной этого.