0
所以最近發生的是這段代碼,這段代碼太長了。有什麼辦法可以簡單的方式製作這段代碼嗎?我是一個菜鳥和一個朋友問我,他沒有任何帳戶要問,所以我就問我的,我真的不擅長編碼,請幫助!(我欠他的)Scrabble ACSL java編碼
Scanner input = new Scanner(System.in);
System.out.println("Enter the word:");
String firstLetter = input.next();
String secondLetter = input.next();
String thirdLetter = input.next();;
String lastLetter = input.next();;
int valOfFirstLetter = 0;
int valOfSecondLetter = 0;
int valOfThirdLetter = 0;
int valOfLastLetter = 0;
if (firstLetter.equals("a"))
valOfFirstLetter = valOfFirstLetter + 1;
else if (firstLetter.equals("e"))
valOfFirstLetter = valOfFirstLetter + 1;
else if (firstLetter.equals("d"))
valOfFirstLetter = valOfFirstLetter + 2;
else if (firstLetter.equals("r"))
valOfFirstLetter = valOfFirstLetter + 2;
else if (firstLetter.equals("b"))
valOfFirstLetter = valOfFirstLetter + 3;
else if (firstLetter.equals("m"))
valOfFirstLetter = valOfFirstLetter + 3;
else if (firstLetter.equals("v"))
valOfFirstLetter = valOfFirstLetter + 4;
else if (firstLetter.equals("y"))
valOfFirstLetter = valOfFirstLetter + 4;
else if (firstLetter.equals("j"))
valOfFirstLetter = valOfFirstLetter + 8;
else if (firstLetter.equals("x"))
valOfFirstLetter = valOfFirstLetter + 8;
else
System.out.println("NOOOOOOO");
System.out.println(valOfFirstLetter);
if (secondLetter.equals("a"))
valOfSecondLetter = valOfSecondLetter + 1;
else if (secondLetter.equals("e"))
valOfSecondLetter = valOfSecondLetter + 1;
else if (secondLetter.equals("d"))
valOfSecondLetter = valOfSecondLetter + 2;
else if (secondLetter.equals("r"))
valOfSecondLetter = valOfSecondLetter + 2;
else if (secondLetter.equals("b"))
valOfSecondLetter = valOfSecondLetter + 3;
else if (secondLetter.equals("m"))
valOfSecondLetter = valOfSecondLetter + 3;
else if (secondLetter.equals("v"))
valOfSecondLetter = valOfSecondLetter + 4;
else if (secondLetter.equals("y"))
valOfSecondLetter = valOfSecondLetter + 4;
else if (secondLetter.equals("j"))
valOfSecondLetter = valOfSecondLetter + 8;
else if (secondLetter.equals("x"))
valOfSecondLetter = valOfSecondLetter + 8;
else
System.out.println("NOOOOOOO");
System.out.println(valOfSecondLetter);
if (thirdLetter.equals("a"))
valOfThirdLetter = valOfThirdLetter + 1;
else if (thirdLetter.equals("e"))
valOfThirdLetter = valOfThirdLetter + 1;
else if (thirdLetter.equals("d"))
valOfThirdLetter = valOfThirdLetter + 2;
else if (thirdLetter.equals("r"))
valOfThirdLetter = valOfThirdLetter + 2;
else if (thirdLetter.equals("b"))
valOfThirdLetter = valOfThirdLetter + 3;
else if (thirdLetter.equals("m"))
valOfThirdLetter = valOfThirdLetter + 3;
else if (thirdLetter.equals("v"))
valOfThirdLetter = valOfThirdLetter + 4;
else if (thirdLetter.equals("y"))
valOfThirdLetter = valOfThirdLetter + 4;
else if (thirdLetter.equals("j"))
valOfThirdLetter = valOfThirdLetter + 8;
else if (thirdLetter.equals("x"))
valOfThirdLetter = valOfThirdLetter + 8;
else
System.out.println("NOOOOOOO");
System.out.println(valOfThirdLetter);
if (lastLetter.equals("a"))
valOfLastLetter = valOfLastLetter + 1;
else if (lastLetter.equals("e"))
valOfLastLetter = valOfLastLetter + 1;
else if (lastLetter.equals("d"))
valOfLastLetter = valOfLastLetter + 2;
else if (lastLetter.equals("r"))
valOfLastLetter = valOfLastLetter + 2;
else if (lastLetter.equals("b"))
valOfLastLetter = valOfLastLetter + 3;
else if (lastLetter.equals("m"))
valOfLastLetter = valOfLastLetter + 3;
else if (lastLetter.equals("v"))
valOfLastLetter = valOfLastLetter + 4;
else if (lastLetter.equals("y"))
valOfLastLetter = valOfLastLetter + 4;
else if (lastLetter.equals("j"))
valOfLastLetter = valOfLastLetter + 8;
else if (lastLetter.equals("x"))
valOfLastLetter = valOfLastLetter + 8;
else
System.out.println("NOOOOOOO");
System.out.println(valOfSecondLetter);
System.out.println(firstLetter + secondLetter + thirdLetter + lastLetter);
所以這個程序做的是如果你輸入一個單詞並且只有四個字母單詞(來自ACSL),只有a,e = 1點d,r = 2點b,m = 3點v,y = 4點j,x = 8點。如果我鍵入用空格例如Java的,它會打印我們下面
8
1
4
1
java
如果你輸入的東西比那些信件否則將打印「NOOOOOO」(我不知道他爲什麼這麼做) 而我呢不知道我怎樣才能把它變成一個更簡單的形式。我正在考慮製作一個字符串並讀取每個字母,並將它放在一個if else語句中。那可能嗎?