저는 아직 자바를 배우면서 간단한 "번역"프로젝트를 만들고 있습니다. 그러나 무언가가 잘못되어 많은 시간을 보냈지 만 그것을 고치는 방법을 여전히 모르고 있습니다. 코드는 다음과 같습니다.대체 코드는 편도로 작동하지만 역순으로 작동하지 않습니다.
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"을 얻으려고합니다. 또한 "@"과 몇 가지 다른 문자를 입력하면 오류가 발생합니다. 뭐가 문제 야? 어떤 불빛?