第四章第十五题(电话键盘)(Phone key pads)
-
*4.15(电话键盘)编写一个程序,提示用户输入一个小写或大写的字母,然后显示对应的数字。对于非字母的输入,提示非法输入。
Enter a letter: A
The corresponding number is 2
Enter a letter: a
The corresponding number is 2
Enter a letter: ?
? is an invalid input*4.15(Phone key pads)Write a program that prompts the user to enter a lowercase or uppercase letter and displays its corresponding number. For a nonletter input, display invalid input.
Enter a letter: A
The corresponding number is 2
Enter a letter: a
The corresponding number is 2
Enter a letter: ?
? is an invalid input -
参考代码:
-
方法一:
package chapter04; import java.util.Scanner; public class Code_15 { public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.print("Enter a letter: "); String str = input.nextLine(); char letter = str.toUpperCase().charAt(0); if (letter == 'A' || letter == 'B' || letter == 'C') System.out.println("The corresponding number is 2"); else if (letter == 'D' || letter == 'E' || letter == 'F') System.out.println("The corresponding number is 3"); else if (letter == 'G' || letter == 'H' || letter == 'I') System.out.println("The corresponding number is 4"); else if (letter == 'J' || letter == 'K' || letter == 'L') System.out.println("The corresponding number is 5"); else if (letter == 'M' || letter == 'N' || letter == 'O') System.out.println("The corresponding number is 6"); else if (letter == 'P' || letter == 'Q' || letter == 'R' || letter == 'S') System.out.println("The corresponding number is 7"); else if (letter == 'T' || letter == 'U' || letter == 'V') System.out.println("The corresponding number is 8"); else System.out.println("The corresponding number is 9"); } }
-
方法二:
package chapter04; import java.util.Scanner; public class Code_15another { public static void main(String[] args) { String letter; Scanner input = new Scanner(System.in); System.out.print("Enter a letter: "); letter = input.nextLine(); if(letter.length() != 1) System.exit(1); if(Character.isLetter(letter.charAt(0))) { if("abcABC".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 2"); else if("defDEF".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 3"); else if("ghiGHI".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 4"); else if("jklJKL".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 5"); else if("mnoMNO".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 6"); else if("pqrsPQRS".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 7"); else if("tuvTUV".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 8"); else if("wxyzWXYZ".contains(""+letter.charAt(0))) System.out.println("The corresponding number is 9"); } else System.out.println(letter + " is an invalid input"); input.close(); } }
-
-
结果显示:
Enter a letter: w
The corresponding number is 9
Process finished with exit code 0