将电话号码更改为字符串为所有数字

时间:2014-12-04 23:28:55

标签: java

enter image description here我在java中编写一个程序,假设从用户那里接收一个电话号码(例如1800helpmee)并打印出相应的号码。 1800 435 7633应该是答案。这是我到目前为止的代码。我已将号码加载到数组中。我对下一部分有疑问。我的数组叫做inputNumber。我试过这样的东西,但它似乎没有工作

for (int j = 0;  j<9; j ++) { 
        if ( inputNumber[j] =='A' || inputNumber[j] == 'B' || inputNumber[j] =='C'){
            System.out.println("2");
        }  etc.

2 个答案:

答案 0 :(得分:1)

inputNumber[j] =='A'切换为inputNumber[j].equalsIgnoreCase("a"),将其应用于a,b和c,然后重试

答案 1 :(得分:1)

您可以使用a for each循环来迭代字符串数组

public static void main(String[] args) {
    String [] inputNumber = {"1","8","0","0","h","e","l","p"}; 

    for (String number : inputNumber) {
        switch (number.toUpperCase()) {
            case "A":
            case "B":
            case "C":
                System.out.println("2");
                break;
            case "D":
            case "E":
            case "F":
                System.out.println("3");
                break;
            // other letters
            default:
                System.out.println(number);
        }
    }
} 

用开关评估每个字母(从Java 7开始)并打印出适当的数字。注意通过,在几个case之后的break语句。调用toUpper()方法仅与每个字母的大写版本进行比较。