-1
import cs1.Keyboard;

public class charAT {
    public static void main(String[] args) {
        String s;

        //The telephone number should be 79575757
        System.out.println("Enter your telephone number");
        s = Keyboard.readString();

        int index1 = s.charAt(0);

这部分不起作用:

        if((char)index1 == 7){
            System.out.println("The second number is "+(char)index1);
        }
        else {
            System.out.println("This number is invalid");
        }
    }
}

我究竟做错了什么?

4

2 回答 2

1

您的第一个问题是您正在根据整数值 7 检查 index1。将其更改为

char index1 = s.charAt(0);
if(index1 == '7'){

接下来,我假设您想获得第二个数字,而不仅仅是再次显示相同的数字,所以

    index1 = s.charAt(1); //get the second character
    System.out.println("The second number is "+ index1);
}
于 2012-12-13T14:45:48.660 回答
1

首先,charAt() 方法返回char,所以你的代码应该是这样的:

char ch = s.charAt(0);

我将变量名从 更改index1ch。charAt() 方法返回char指定位置的 ,而不是索引。

其次,您应该比较char

if (ch == '7') {

最后,您可以Stringchar这样连接:

System.out.println("The second number is "+ ch);
于 2012-12-13T14:57:39.287 回答