Хотя, возможно, это и не прямой ответ на ваш вопрос, вы можете значительно улучшить следующее:
В своем основном теле функции вы смешиваете часть бизнес-логики
(вывод результата на стандартный вывод) с подробной информацией о задаче.
Делая это, вы создаете код, который очень сложно поддерживать. Что, если
вместо этого вы хотите поместить число в текстовое поле вместо печати
Это? Тогда вам придется изменить все операторы println. Что, если
Вы иногда хотите напечатать, а иногда обновить текстовое поле? Было бы
Вы добавляете несколько тестов вместо каждого места?
Смешивая бизнес-логику (и я использую это как довольно свободно определенный термин,
как обрабатывать результаты) в коде становится сложнее тестировать.
принцип KISS преподается по причине, и вы бы сделали мудрый
стараясь не выучить это трудным путем:)
Возможно, вышесказанное не так понятно, я имею в виду, что если ваш код
было написано следующим образом:
public class digits
{
public static int main letterToMobileDigit(char letterUpperOrLowerCase)
{
char letter = letterUpperOrLowerCase.toLowerCase();
if (letter=='a' || letter=='b' || letter== 'c')
{
return 1;
}
else if(letter=='d' || letter=='e' || letter== 'f')
{
return 2;
}
else if (letter=='g' || letter=='h' || letter== 'i')
{
return 3;
}
else if (letter=='j' || letter=='k' || letter== 'l')
{
return 4;
}
else if (letter=='m' || letter=='n' || letter== 'o')
{
return 5;
}
else if (letter=='p' || letter=='q' || letter== 'r' || letter== 's')
{
return 6;
}
else if (letter=='t' || letter=='u' || letter== 'v')
{
return 7;
}
else if (letter=='w' || letter=='x' || letter== 'y' || letter== 'z')
{
return 9;
}
System.err.println("invalid char " + letter); // not the best or most elegant error handling, consider improving
return -1;
}
public static void main (String letter)
{
System.out.println(letterToMobileDigit(letter.charAt(0)))
}
}
у вас есть код, который намного проще изменить, проверить и прочитать.
Принцип отделения логики там, где она принадлежит, является
чрезвычайно важный навык, и нет веских причин для не всегда
практикуя это.