4

基本的に、文字 AZ を受け取り、それを Leek (AZ 文字のように見える記号、#、文字の組み合わせ。switch ステートメント (switch、case、breaks) のみを使用できます) に変換する必要があります。また、使用する必要があります。 .next().charAt(0) メソッド。

プログラムをコンパイルしようとすると、case ステートメントで使用した az 文字を指している「シンボルが見つかりません」という複数のエラーが表示されます。

import java.util.Scanner;

public class dlin_Leet
{
    public static void main(String args[])
    {
        Scanner input = new Scanner(System.in);

        char character;//input by user
        String Leet;

        System.out.print("Enter character to convert:");
        String Leet = input.next();
        char character = Leet.charAt(0);

        switch (character)
        {
            case a: Leet = "4";
                break;
            case b: Leet = "I3";
                break;
            case c: Leet = "[";
                break;
            case d: Leet = ")";
                break;
            case e: Leet = "3";
                break;
            case f: Leet = "|=";
                break;
            case g: Leet = "&";
                break;
            case h: Leet = "#";
                break;
            case i: Leet = "1";
                break;
            case j: Leet = "J";
                break;
            case k: Leet = "|<";
                break;
            case l: Leet = "1";

             }
        System.out.println(Leet);
    }
}
4

5 に答える 5

5

文字定数は、アポストロフィで囲む必要があります。

case 'a': それ以外のcase a:

コードを修正してください。これが唯一の構文エラーであることを願っています。

于 2012-10-02T16:19:13.017 に答える
3

また、変数「Leet」と「character」を同じブロックで2回宣言しています(ローカル変数が重複しています)

于 2012-10-02T16:23:19.403 に答える
1

(一重引用符を意味する)を使用する case ステートメントcharは、次のようになります。

 switch (character)
            {
                case 'a': Leet = "4";
                    break;
                case 'b': Leet = "I3";
                    break;
             .........
            }
于 2012-10-02T16:19:41.470 に答える
0

あなたのケースは、ケース「a」のような文字でなければなりません

 switch(character) 

 {
    case 'a':
       //do your stuff
    }

また、リート(文字列変数を2回)を宣言しています。宣言するだけで、スキャナーから入力を取得するときに同じ変数を使用できます

于 2012-10-02T16:20:23.453 に答える
0

switch case での文字列の使用は、JDK7 を使用している場合にのみ使用でき、その場合でも値を引用符で囲む必要があります。お気に入り

case "a":
于 2012-10-02T16:28:32.903 に答える