Java:返回Int值/多个值
代码需要检查字符串字母是否在字符串消息中,以及它在字符串消息中的次数。return语句表示无法将int count转换为布尔值,因此我不确定如何返回该值。如何将count返回给main方法,以便代码打印在字符串消息中找到字符串字母的次数Java:返回Int值/多个值,java,Java,代码需要检查字符串字母是否在字符串消息中,以及它在字符串消息中的次数。return语句表示无法将int count转换为布尔值,因此我不确定如何返回该值。如何将count返回给main方法,以便代码打印在字符串消息中找到字符串字母的次数 public class StringFind { /** findLetter looks for a letter in a String * @param String letter to look for * @param String
public class StringFind
{
/** findLetter looks for a letter in a String
* @param String letter to look for
* @param String text to look in
* @return boolean true if letter is in text
* After running the code, change this method to return
* an int count of how many times letter is in the text.
*/
public boolean findLetter(String letter, String text)
{
boolean flag = false;
int count = 0;
for(int i=0; i < text.length(); i++)
{
if (text.substring(i, i+1).equalsIgnoreCase(letter))
{
flag = true;
count++;
}
}
return flag;
}
public static void main(String args[])
{
StringFind test = new StringFind();
String message = "Apples and Oranges";
String letter = "p";
System.out.println("Does " + message + " contain a " + letter + "?");
System.out.println( test.findLetter(letter, message));
System.out.println(message + " contains " + letter + " " + count + " times.");
}
}
公共类StringFind
{
/**芬德莱特在字符串中查找字母
*@param要查找的字符串字母
*@param要查找的字符串文本
*@如果字母为文本,则返回布尔值true
*运行代码后,将此方法更改为return
*字母在文本中出现的次数的整数计数。
*/
公共布尔findLetter(字符串字母、字符串文本)
{
布尔标志=假;
整数计数=0;
对于(int i=0;i
将返回类型从boolean
更改为int
,并将返回标志更改为返回计数
。如果返回计数,则标志是多余的。计数包含相同的信息:如果count>0
您的答案可以在代码中找到,则可以找到该字母:
* @return boolean true if letter is in text
* After running the code, change this method to return
* an int count of how many times letter is in the text.
只需将函数的标题更改为:
public int findLetter(String letter, String text)
这样你就可以说“嘿,我会给你一个号码”
然后更改函数中的最后一行:
return count;
你完了。println将打印您的返回计数值
快乐编码您应该修改方法findLetter
的签名以返回count
,对于布尔值,比较返回的计数是否大于0:
public int findLetter(字符串字母、字符串文本){
整数计数=0;
char cc=Character.toLowerCase(字母.charAt(0));
for(char textLetter:text.toLowerCase().toCharArray()){
如果(textLetter==cc){
计数++;
}
}
返回计数;
}
测试将如下所示:
StringFind test=new StringFind();
String message=“苹果和橙子”;
字符串字母=“p”;
int count=test.findLetter(字母、消息);
System.out.println(“是否“+消息+”包含“+字母+”?”);
系统输出打印项次(计数>0);
System.out.println(message+“包含”+字母+“+计数+”次数);
如果您已经说出了该值出现的次数,那么如果该值出现,我不知道为什么需要返回true。他们的意思是一样的。