我怎样才能检查char是否等于某个字符串

时间:2016-03-13 22:27:46

标签: java

我需要获取用户输入并用"e"替换每个字符"#"。由于Java不允许我们在String中使用索引,因此我决定使用charAt(index),现在我得到错误,说char不能被解除引用。

我想学习如何使用循环。

import java.util.Scanner;
public class Replacing{
    public static void main(String[]args){
        Scanner input = new Scanner(System.in);
        System.out.println("What is your name: ");
        String name = input.next();
        String name2= "";
        int index = 0;
        int length = name.length();
        while (index < length){
            char a = name.charAt(index);
            if( a.equals("e")){
                name2 = name2 + "#";}
            else
            {name2 = name2+cha;}
            index++;}
    }
}

1 个答案:

答案 0 :(得分:1)

找到解决方案IT实际上非常简单: 不得不使用==运算符并且必须使用单引号而不是双引号,因为该引用&#34; char不能被取消引用&#34;错误

import java.util.Scanner;
public class PS9Q3{
public static void main(String[]args){
Scanner input = new Scanner(System.in);
System.out.println("What is your name: ");
String name = input.next();
String name2= "";
int index = 0;
int length = name.length();
while (index < length){
   char a = name.charAt(index);
     if( a=='e'){ //<--------HAD TO CHANGE FROM DOUBLE QUOTE INTO SINGLE QUOTE
       name2 = name2 + "#";}
     else
     {name2 = name2+a;}
     index++;}
System.out.println(name2);

}

}