import javax.swing.JOptionPane;
public class PredefinedClass {
public static void main(String[] args){
do{
String input = JOptionPane.showInputDialog("Enter a character:");
if(input.length() > 1){
JOptionPane.showMessageDialog(null,"Invalid Input. Input a character only.");
}else if(Character.isLetter(input.charAt(0))){
if(Character.isUpperCase(input.charAt(0))){
JOptionPane.showMessageDialog(null,"The character is an Uppercase letter.");
}else if(Character.isLowerCase(input.charAt(0))){
JOptionPane.showMessageDialog(null,"The character is a Lowercase letter.");
}
}else if(Character.isDigit(input.charAt(0))){
JOptionPane.showMessageDialog(null,"The character is a digit."+
"\nThe square root of "+input+" is "+Math.sqrt(input.charAt(0)));
}
}while(JOptionPane.showConfirmDialog(null,"Try again?[Y/N]","Try again?[Y/N]",JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION);
}
}
Math.sqrt(input.charAt(0))當我嘗試9它輸出7.54應該是3.爲什麼?Math.sqrt函數
爲了解決這個問題:'Math.sqrt(input.charAt(0) - '0')' – Joost
@aix可我知道你爲什麼要添加 - '0'? – Zhianc
@jcdavid:當我將表示爲字符的數字轉換爲數字等值(即「0」變爲「0」,「1」變爲「1」)時,我減去了'0',依此類推)。 – NPE