首页 > 解决方案 > Java:返回 Int 值/多个值

问题描述

代码需要检查字符串字母是否在字符串消息中,以及它在字符串消息中的次数。return 语句说它不能将 int count 转换为布尔值,所以我不确定如何返回该值。如何将计数返回给 main 方法,以便代码打印在字符串消息中可以找到字符串字母的次数?

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.");
}
}

标签: java

解决方案


将返回类型从booleantoint更改return flagreturn count。如果您返回计数,则该标志是多余的。计数包含相同的信息:如果 找到了该字母count > 0


推荐阅读