编写一个程序,输出一个字符串中的大写英文字母数,小写英文字母数以及非英文字母数。

这是一个Java程序,用于输入一个字符串并分别计算其中的大写英文字母、小写英文字母和非英文字母的数量。程序使用Scanner类获取用户输入,并通过遍历字符串中的每个字符来判断其类型,然后进行计数。此外,还提供了一个查找子字符串在另一个字符串中出现次数的实现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


import java.util.Scanner;
public class CountString{
    public static void main(String[] args){
        int uletter = 0;//保存大写字母
        int lletter = 0;//保存小写字母
        int noletter = 0;//保存非字母数

  Scanner scanner = new Scanner(System.in);

  System.out.println("请输入一个带字母和非字母的字符串");
        String str=scanner.next();
        char[] ch=str.toCharArray();
        for(char c:ch){
            if(c>='a'&&c<='z'){
                uletter++;
            }else if(c>='A'&&c<='Z'){
                lletter++;
            }else{
                noletter++;
            }
        }

       System.out.println("小写:"+uletter+" 大写:"+lletter+" 非字母:"+noletter);
 }
   
}

 

 

*/

import java.util.Scanner;

public class NewClass {
    public static void main(String args[]){

        int count=0;//字串出现次数
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入一个长字符串:");
        String longStr=scanner.next();
        System.out.println("请输入一个短字符串:");
        String shortStr=scanner.next();
        if(longStr.length()<shortStr.length()){
            System.out.println("字符串["+shortStr+"]在字符串["+longStr+"]中出现了"+count+"次");
            return;
        }
        for(int i=0;i<=longStr.length()-shortStr.length();i++){
            String tempStr=longStr.substring(i, i+shortStr.length());//将长传分割成与字串相同长度的字符串
            System.out.println(tempStr);
            if(tempStr.equals(shortStr)){
                count++;
            }
        }
        System.out.println("字符串:["+shortStr+"]在字符串["+longStr+"]中出现了"+count+"次");
    }
}

/**

*这是上一个程序的另一种实现方式

*/

import java.util.Scanner;

public class SubStringCount {
    public static void main(String args[]){
        int count=0;
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入一个长字符串:");
        String longStr=scanner.next();
        System.out.println("请输入一个短字符串:");
        String shortStr=scanner.next();
        int index=longStr.indexOf(shortStr);
        while(index!=-1){
            count++;
            index=longStr.indexOf(shortStr, index+shortStr.length());

        }
        System.out.println("字符串["+shortStr+"]在字符串["+longStr+"]中出现了"+count+"次");
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值