如何计算字符串中char出现的次数?

我有琴弦 java

a.b.c.d

我想计算“。”的出现。 以惯用方式,最好是单线。 数组

(之前,我曾将此约束表示为“无循环”,以防您想知道为何每一个人都试图不使用循环而回答)。 app


#1楼

import java.util.Scanner;

class apples {

    public static void main(String args[]) {    
        Scanner bucky = new Scanner(System.in);
        String hello = bucky.nextLine();
        int charCount = hello.length() - hello.replaceAll("e", "").length();
        System.out.println(charCount);
    }
}//      COUNTS NUMBER OF "e" CHAR´s within any string input

#2楼

不肯定这样作的效率,但这是我在不引入第三方库的状况下能够编写的最短代码: spa

public static int numberOf(String target, String content)
{
    return (content.split(target).length - 1);
}

#3楼

我不喜欢为此目的分配新字符串的想法。 而且因为该字符串在其存储值的后面已经有一个char数组,所以String.charAt()其实是免费的。 code

for(int i=0;i<s.length();num+=(s.charAt(i++)==delim?1:0))

仅需J2SE,就能够在1行或更少的时间内完成窍门,而无需其余须要收集的分配。 字符串


#4楼

如下源代码将给您用户输入的单词中出现给定字符串的次数:- get

import java.util.Scanner;

public class CountingOccurences {

    public static void main(String[] args) {

        Scanner inp= new Scanner(System.in);
        String str;
        char ch;
        int count=0;

        System.out.println("Enter the string:");
        str=inp.nextLine();

        while(str.length()>0)
        {
            ch=str.charAt(0);
            int i=0;

            while(str.charAt(i)==ch)
            {
                count =count+i;
                i++;
            }

            str.substring(count);
            System.out.println(ch);
            System.out.println(count);
        }

    }
}

#5楼

一个简短的例子是 input

String text = "a.b.c.d";
int count = text.split("\\.",-1).length-1;
相关文章
相关标签/搜索