манипуляции со строками - средние 3 буквы - PullRequest
3 голосов
/ 01 июня 2011

После запроса строки я пытаюсь отобразить три средних символа этой строки. Как бы я это сделал?

вот что я пробовал:

String middle3 = (string.length < 3) ? null : string.substring(string.length / 2 - 1), string.length / 2 + 2);

Ответы [ 2 ]

2 голосов
/ 01 июня 2011

length - это метод класса String , поэтому вам необходимо использовать ():

String middle3 = (string.length() < 3) ? null : 
              string.substring(string.length() / 2 - 1, string.length() / 2 + 2);
0 голосов
/ 23 марта 2016

Это будет работать для любой нечетной строки, длина> 3

String word = "Hello";
int midCharsStart = ((word.length() + 1) / 2) - 2;
int midCharsEnd = midCharsStart + 3;
System.out.println(word.substring(midCharsStart, midCharsEnd));
...