0

私はまだJavaを学んでいるので、簡単な「翻訳」プロジェクトを作ろうとしています。しかし、何かがうまくいかず、何時間も費やしましたが、まだ修正方法がわかりません. コードは次のとおりです。

public static void main(String[] args)
 {

  char[] abcCode = {'!','@','#','$','%','^','&','*','(',')','_','-','+','=','|','`','~','}','{','[',']','"',';',':','>','<','?','/','\''};

  char[] numCode = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','x','y','z'};


  String src = args[0];
  String result = "";


  for(int i=0; i < src.length();i++)
  {
   char ch = src.charAt(i); 
   if ('a' <= ch && ch <= 'z') 
    result += abcCode[ch-'a']; 
   else if (abcCode[0] <= ch && ch <= abcCode[15])
    result += numCode[ch-abcCode[0]];

  }

  System.out.println("src: "+src);
  System.out.println("result: "+result);}}

たとえば、「lol」と入力すると、必要な「-|-」が表示されます。しかし、その逆は機能しません。-|- と入力して "lol" を取得することになっています。また、「@」などをいくつか入力すると、エラーが発生します。どうしたの?ライトはありますか?

4

1 に答える 1