如何计算@、#、+等符号的数量;Java中的etc

如何计算@、#、+等符号的数量;Java中的etc,java,string,Java,String,我正在尝试编写一个代码来计算字符串中的字母、字符、空格和符号数。但我不知道如何计算符号 java中有这样的函数吗?这在很大程度上取决于您对术语符号的定义 直截了当的解决方案可能是 Set<Character> SYMBOLS = Set.of('@', ' ', .... for (int i=0; i < someString.length(); i++} { if (SYMBOLS.contains(someString.charAt(i)) { 比如说。以及各种其

我正在尝试编写一个代码来计算
字符串中的字母、字符、空格和符号数。但我不知道如何计算符号


java中有这样的函数吗?

这在很大程度上取决于您对术语符号的定义

直截了当的解决方案可能是

Set<Character> SYMBOLS = Set.of('@', ' ', ....
for (int i=0; i < someString.length(); i++} {
  if (SYMBOLS.contains(someString.charAt(i)) { 

比如说。以及各种其他快捷方式,这些快捷方式已经表示了这组或那组字符。

请发布您迄今为止尝试过的内容

如果需要单个字符的计数,最好迭代该字符串,并使用映射跟踪该字符的计数

如果只需要下面的总计数,就可以使用正则表达式

while (matcher.find() ) {count++} 

一种方法是迭代字符串并将每个字符与其ASCII值进行比较

String str = "abcd!@#";
        for(int i=0;i<str.length();i++)
        {
            if(33==str.charAt(i))
                System.out.println("Found !");
        }
String str=“abcd!#”;

对于(int i=0;我在这里看到:您只需反转并计算所有没有字母的跳过字符。欢迎使用SO。请阅读。阅读[]上的Java教程。我不知道您可以直接执行
Set.of
。我总是看到它像
Set.of
@ShashwatKhanna一样编写。好吧,这些“类型提示”由于java类型推断在过去几年中不断得到改进,而且“Set.of()”需要java9,我非常确定它应该可以工作(尽管免责声明:我自己没有测试它)。
String str = "abcd!@#";
        for(int i=0;i<str.length();i++)
        {
            if(33==str.charAt(i))
                System.out.println("Found !");
        }