编写一个递归的,布尔值的方法containsVowel,它接受一个字符串,如果该字符串包含一个元音,则返回true.一个字符串包含一个元音如果:字符串的第一个字符是一个元音,或者字符串的其余部分(超出第一个字符)包含一个元音这是我的编程实验室这是我有的编译器sas有一个元音错误,它没有提供帮助.
请帮我纠正错误,谢谢.
boolean containsVowel(String s)
{
if(s.containsVowel("aeiouAEIOU"))
{
return true;
}
else
{
(s.substring(!=));
return false
}
}
Run Code Online (Sandbox Code Playgroud)
编译器错误
codelab分析
备注:您似乎在编译时出错
这是我之前做过的另一个问题:
编写一个递归的,int -valued方法len,它接受一个字符串并返回字符串中的字符数.如果字符串是空字符串(""),则字符串的长度为:0.比第一个字符之外的其余字符串的长度多1个.
以下是我的编程实验室正在寻找的答案:
int len(String s)
{
if(s.equals("")){
return 0;
}
else {
return (1+len(s.substring(1)));}
}
Run Code Online (Sandbox Code Playgroud)
Dan*_*lan 11
这段代码中有一些问题.
s.containsVowel
. s
是String,Java String没有containsVowel
方法.你应该调用自己的containsVowel
方法,而不是String one(不存在).
如果你做了那个改变,这将是一个无限的递归方法,因为你没有"基本案例".一个让它退出的案例.
(s.substring( !=));
不编译.我不知道你在这里做什么.
return false
不以分号结尾.如果您希望编译代码,则需要它.
以下是您应该以伪代码方式处理此算法的方法
containsVowel(String input)
if (empty(input)) return false //the base case
char firstChar = getFirstCharOf(input)
return firstChar.isAnyOf("vowelCharacters") || containsVowel(inputWithoutFirstChar(input))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1129 次 |
最近记录: |