gpt4 book ai didi

java - Pig latin 程序,switch/else 错误

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:48:56 26 4
gpt4 key购买 nike

//我的 else if 语句需要帮助。如果单词以元音开头,则在单词末尾添加 way。如果单词以辅音开头,则将该辅音放在末尾并添加 ay。

我的问题是,如果我有一个以元音作为第一个字母的单词,它会像辅音一样贯穿始终。如果我输入“are”,我会得到“arewayreaay”而不是“areway”。

public class piglatin {
public static void main(String[] args) {
String str = IO. readString();
String answer = "";

if(str.startsWith("a"))
System.out.print(str + "way");

if(str.startsWith("e"))
System.out.print(str + "way");

if(str.startsWith("i"))
System.out.print(str + "way");

if(str.startsWith("o"))
System.out.print(str + "way");

if(str.startsWith("u"))
System.out.print(str + "way");
else{
char i = str.charAt(0);
answer = str.substring( 1, str.length());
System.out.print(answer + i + "ay");
}
}
}

最佳答案

if(str.startsWith("a") || str.startsWith("e") || str.startsWith("i") ... (and so on)) {
System.out.print(str + "way");
} else{
char i = str.charAt(0);
answer = str.substring( 1, str.length());
System.out.print(answer + i + "ay");
}

或者如果/否则如果/否则

解释:

//  combine all the if blocks together .. if you dont it checks for vowel 'a' and prints
// 'areay' then it checks for vowel 'u' and enters the else block .. where it again
// operates on 'are' (check immutability of strings) gets charAt(0) i.e 'a' and prints
// 'rea' and since you concatenated 'ay' ... the final output = 'arewayreaay'

关于java - Pig latin 程序,switch/else 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12943265/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com