java - 尝试输出字符串中*出现的次数

标签 java

这让我很困惑。我正在尝试计算从输入扫描仪中获取的用户输入中出现的 * 数量。但每次我尝试时,它要么继续添加前一行中的数字,要么拒绝输出任何内容。感到失落和沮丧,因为我看不到代码有任何问题。有人可以告诉我我做错了什么吗? 编译器没有给出语法错误,我看不到逻辑错误。

import java.util.Scanner;

public class lab11{

public static void main(String[] args){
        Scanner kb = new Scanner(System.in);
        String input;
        input = kb.nextLine();
        int count = 0;
        while(!input.equals("#")){
                input = kb.nextLine();
                for(count = 1; count < input.length(); count ++){
                        int starCount = 0;
                        if(input.charAt(count)=='*'){
                                starCount++;

                        }//if
                        System.out.println(starCount);
                }//for
        }//while


}//main

}//class

最佳答案

您正在 for 循环内初始化 starCount,因此每次迭代后它都会获得 0。 而且你的 count 应该从 0 开始,你的 System.out.println(starCount); 语句应该在 for 循环之后,因为你必须对于每个用户输入,打印一次 starCount 的最终值。

像这样修改你的代码:

import java.util.Scanner;

public class Main
{
    public static void main(String[] args)
    {
            Scanner kb = new Scanner(System.in);
            String input="";
            int count = 0;
            while(true){
                    input = kb.nextLine();
                    if(input.equals("#"))
                        break;

                    int starCount=0;
                    for(count = 0; count < input.length(); count ++){
                            if(input.charAt(count)=='*'){
                                    starCount++;
                            }//if
                    }//for
                    System.out.println(starCount);
            }//while
        }//main
}

关于java - 尝试输出字符串中*出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36233146/

相关文章:

java - C、Java 或 PHP 中的语音识别?

java - 如何在 for 循环中编写附加代码块

java - 缺少包 'play.filters.cors.CORSFilter' - Play Framework 2.4.6 (Java)

java - 在 Tomcat 中部署 Jersey 应用程序时出现 "The requested resource is not available"

java - Wildfly 增加线程数

java - 这两种初始化实例变量的方式有什么区别?

java - Android 如何获取字符串的第一个字符?

java - JTable 中的单元格验证

java - 如何从 Java 程序中调用 shell 脚本?

java - 如何使表格行适合屏幕宽度?