import java.util.*;
class Test{
private int intToken;
public Test(){
intToken = 0;
}
// A method that returns the last character of a String
// This here returns a string regardless of input
public String lastChar(String tok){
String token = String.valueOf(tok);
String strToken = token.substring(token.length()-1);
return strToken;
}
public static void main(String[]args){
Test test = new Test();
Scanner scan = new Scanner(System.in);
System.out.println("Enter a number to get its last number");
String value = scan.nextLine();
System.out.println(test.lastChar(value));
}
}
Метод, приведенный выше, lastChar()
работает как для Integer
, так и для строк. Поскольку я занимаюсь программированием, мне очень хотелось создать один метод, который возвращает либо String
, либо Integer
, но в рамках метода, который я хотел бы определить, является ли вход Integer
или String
.Это безопасная практика программирования?
Сразу после создания методов, я начал экспериментировать с
Scanner scan = new Scanner(tok);
scan.hasNextInt();
вернулся false
даже когда был в tok
int
.
Я также попытался
tok.contains("0,1,2,3,4,5,6,7,8,9");
Он также вернулся false
даже когда был в tok
int
. Мне еще предстоит изучить тип char
. но я заметил, что tok.contains("1");
вернулся true
.
Я хотел использовать результат boolean
для создания отдельных обработчиков для String
и Integer
. Ну код работает до сих пор.
Теперь мой вопрос, если это безопасно или хорошая практика, чтобы использовать один метод, как lastChar()
, или я должен определить два различных метода lastInt()
и lastStr()
Числами имеют цифры (которые являются одной цифрой номера). Внутри они не хранятся в базе-10, поэтому вам нужно преобразовать их в base-10, чтобы получить последнюю цифру. – tucuxi
Мне жаль, что я не понял, что это значит. Но, давая пример, я обязательно добавлю свои знания. Я пытался получить последний символ из кучки символов. Состоит из чисел, int, control char и т. Д. –