Метод lastIndexOf () возвращает -1, если строка, переданная в качестве параметра, не найдена как подстрока FileName
.
Таким образом, проверка
if(LastIndex > 0 && LastIndex <FileName.length() -1)
нене имеет никакого смысла для меня.
Я бы ожидал, что вместо этого:
if (LastIndex != -1)
return FileName.substring(LastIndex+1);
else
return "";
Что касается
return FileName.substring(LastIndex+1);
Это зависит от контекста: что вы хотитеизвлечь из FileName?
Если вы пытаетесь извлечь расширение файла, тогда +1
необходим, чтобы пропустить вхождение символа .
, найденного в строке.
Ссылки: Строка документации