为了账号安全,请及时绑定邮箱和手机立即绑定

将特殊字符计为java中的空格

将特殊字符计为java中的空格

浮云间 2023-06-08 20:02:57
我正在使用 JDK 8 在 MacOS 上工作。我想计算给定字符串中特殊字符的数量,但在给定代码中,特殊字符被计为空格。我应该怎么办?public static void main(String args[]){ String str; int lc=0,uc=0,d=0,s=0,spc=0; Scanner sc=new Scanner(System.in); System.out.print("Enter the string:"); str=sc.nextLine(); for(int i=0;i<str.length();i++)   {    if(str.charAt(i)>='a' && str.charAt(i)<='z')    {    lc++;    }    else if(str.charAt(i)>='A' && str.charAt(i)<='Z')    {    uc++;    }    else if(str.charAt(i)>='0' && str.charAt(i)<='9')    {    d++;    }    else if(str.charAt(i)>=32)    {    s++;    }    else if(str.charAt(i)>=33 && str.charAt(i)<=47 || str.charAt(i)==64)    {    spc++;    }   }System.out.println("number of small characters in "+str+" are:"+lc);System.out.println("number of CAPITAL characters in "+str+" are:"+uc);System.out.println("number of digits in "+str+" are:"+d);System.out.println("number of Spaces in "+str+" are:"+s);System.out.println("number of Special characters in "+str+" are:"+spc);}这是我得到的输出:Enter the string:abc23@#$% number of small characters in abc23@#$% are:3number of CAPITAL characters in abc23@#$% are:0number of digits in abc23@#$% are:2number of Spaces in abc23@#$% are:4number of Special characters in abc23@#$% are:0它应该显示 4 个特殊字符而不是 4 个空格。
查看完整描述

1 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

更改str.charAt(i)>=32为str.charAt(i)==32


的输出"abc23@#$% "将是:


number of small characters in abc23@#$%  are:3

number of CAPITAL characters in abc23@#$%  are:0

number of digits in abc23@#$%  are:2

number of Spaces in abc23@#$%  are:1

number of Special characters in abc23@#$%  are:4


查看完整回答
反对 回复 2023-06-08
  • 1 回答
  • 0 关注
  • 119 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信