繁体   English   中英

在Java中计算字符串中的字符

[英]Counting characters in a string in Java

我能得到一些帮助。 非常感激:

我想计算一行中*的数量。 当我尝试编译下面的代码时

    import java.util.Scanner;
/**
 * Write a description of class StarCount here.
 *
 * @author Damon
 * @version (a version number or a date)
 */
public class StarCount {

    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);
        int starCount = 0;
        String input = keyboard.nextLine();
        while(!input.equals("#")){

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

        }//while

    } //main

} // class StarCount

但它提出了

“char不能被取消引用”

我花了最后1.5个小时,我很困难。

任何帮助将非常感激。

顾名思义charAt返回一个char,所以你需要使用==来比较原语

 if (input.charAt(starCount) == '*') {

if (input.charAt(starCount).equals('*')){

在此行中您不能将equals方法用于char等基本类型。

所以要比较,你应该使用==运算符。

if (input.charAt(starCount) == '*'){

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM