对于我需要编写的程序,我必须确保用户给我一个五位数的数字,这是一个回文的形式。该程序必须检查以确保该数字是回文,如果不是,则它会给出错误。
有没有人知道怎么做那样的事情?我正在使用Eclipse,如果它有帮助。
大多数情况下,我只需要帮助确保给予该程序的数字只有五位数,不多也不少。
答案 0 :(得分:4)
matches("\\d{5}")
)charAt(index)
)。 答案 1 :(得分:3)
如果你把它作为一个整数:
int n = getUserInput();
// Number is not 5 digits.
if (n/10000>=10 || n/10000<=0)
throw new Exception();
// First and last digits don't match.
if (n%10 != n/10000)
throw new Exception();
// Second and fourth digits don't match.
if ((n%100)/10 != (n/1000)%10)
throw new Exception();
如果你把它作为一个字符串:
String s = getUserInput();
// Test that pin is number.
for (int i=0;i<s.length();i++) {
if (c < '0' || c > '9') // or `if (!Character.isDigit(c))`
throw new Exception();
}
// String is not 5 characters.
if (s.length() != 5)
throw new Exception();
// First and last don't match.
if (s.charAt(0) != s.charAt(4))
throw new Exception();
// Second and fourth don't match
if (s.charAt(1) != s.charAt(3))
throw new Exception();