我正在为班级分配工作,我需要将一封信的用户输入信息转换为电话号码。像A = 2或K = 5一样。我将用户输入转换为大写,然后转换为ASCII。我使用的ASCII为我的if/else和它编译和作品,但始终打印Java:将字母转换为电话键盘上的数字。
System.out.println (x+"'s corrosponding digit is " + 2);
不管信我输入,也是最后一行
else System.err.println("invalid char " + x);
不起作用,它只是打印出数字是2,x是我输入的东西。
import java.util.Scanner;
public class Phone
{
public static void main (String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println ("Please enter a letter from A-Z.");
char x = input.next().charAt(0);
x = Character.toUpperCase(x);
int y = x;
System.out.println ("You entered the letter " + x);
if (y>=65 || y<=67)
System.out.println (x+"'s corrosponding digit is " + 2);
else if (y>=68 || y<=70)
System.out.println (x+"'s corrosponding digit is " + 3);
else if (y>=71 || y<=73)
System.out.println (x+"'s corrosponding digit is " + 4);
else if (y>=74 || y<=76)
System.out.println (x+"'s corrosponding digit is " + 5);
else if (y>=77 || y<=79)
System.out.println (x+"'s corrosponding digit is " + 6);
else if (y>=80 || y<=83)
System.out.println (x+"'s corrosponding digit is " + 7);
else if (y>=84 || y<=86)
System.out.println (x+"'s corrosponding digit is " + 8);
else if (y>=87 || y<=90)
System.out.println (x+"'s corrosponding digit is " + 9);
else System.err.println("invalid char " + x);
}
}
这不是一个MCVE。 – Raedwald