java实现统计字符串中字符及子字符串个数的方法示例

 更新时间:2017年01月03日 11:09:32   作者:aitaoke  
这篇文章主要介绍了java实现统计字符串中字符及子字符串个数的方法,涉及java针对字符串的遍历、判断及运算相关操作技巧,需要的朋友可以参考下

本文实例讲述了java实现统计字符串中字符及子字符串个数的方法。分享给大家供大家参考,具体如下:

这里用java实现统计字符串中的字符(包括数字、大写字母、小写字母以及其他字符)个数,以及字符串的子字符串的个数。

运行效果图如下:

具体代码如下:

import java.util.Scanner;
public class Counter {
  static Scanner scanner = new Scanner(System.in);
  public static void count(String s) {
    int low, upper, num, others;
    low = upper = num = others = 0;
    for (int i = 0; i < s.length(); i++) {
      if (Character.isDigit(s.charAt(i))) {
        num++;
        continue;
      }
      if (Character.isLowerCase(s.charAt(i))) {
        low++;
        continue;
      }
      if (Character.isUpperCase(s.charAt(i))) {
        upper++;
        continue;
      } else {
        others++;
      }
    }
    System.out.println(" 大写字母的个数为:" + upper + "\n 小写字母的个数为:" + low+ "\n 数字的个数为: " + num + "\n 其他字符的个数为: " + others);
  }
  public static void subCounter(String str1, String str2) {
    int counter = 0;
    for (int i = 0; i <= str1.length() - str2.length(); i++) {
      if (str1.substring(i, i + str2.length()).equalsIgnoreCase(str2)) {
        counter++;
      }
    }
    System.out.println("子字符串的个数为: " + counter);
  }
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    System.out.println("请输入一个字符串:");
    String string = scanner.nextLine();
    count(string);
    System.out.println("-----------------------------");
    // 查询在这个字符串中存在多少个子字符串str。
    System.out.println("请输入一个您想查询的子字符串:");
    String str = scanner.nextLine();
    subCounter(string, str);
  }
}

PS:这里再为大家推荐几款在线字符统计工具供大家参考:

在线字数统计工具:
http://tools.jb51.net/code/zishutongji

在线字符统计与编辑工具:
http://tools.jb51.net/code/char_tongji

希望本文所述对大家java程序设计有所帮助。

相关文章

  • springboot2+es7使用RestHighLevelClient的示例代码

    springboot2+es7使用RestHighLevelClient的示例代码

    本文主要介绍了springboot2+es7使用RestHighLevelClient的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • mybatis-plus报错Not Found TableInfoCache异常问题

    mybatis-plus报错Not Found TableInfoCache异常问题

    在集成百度uid-generator过程中,MyBatis-Plus报错NotFoundTableInfoCache异常,解决方法:检查实体类是否继承了官方model,确保实体类对应的mapper已正确注入,在使用@Component注解时,应保证相关依赖已注入
    2024-09-09
  • Java 方法引用与ambda表达式的联系

    Java 方法引用与ambda表达式的联系

    这篇文章主要介绍了Java 方法引用与ambda表达式的联系,方法引用通过方法的名字来指向一个方法, 方法引用同样是Java 8 引入的新特性,而且和Lambda表达式有着不小的联系,它同样可以根据上下文进行推导,进而可以简化代码
    2022-06-06
  • 详解Java面向对象编程之多态

    详解Java面向对象编程之多态

    这篇文章主要为大家介绍了Java面向对象编程之多态,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • java 虚拟机深入了解

    java 虚拟机深入了解

    这篇文章主要介绍了java 虚拟机深入了解的相关资料,ava虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统,需要的朋友可以参考下
    2017-03-03
  • Mybatis-Plus的条件构造器QueryWrapper & UpdateWrapper示例详解

    Mybatis-Plus的条件构造器QueryWrapper & UpdateWrapper示例详解

    Mybatis-Plus的条件构造器QueryWrapper和UpdateWrapper为开发者提供了强大、灵活的条件构建工具,能够大大简化数据库操作的代码,通过本文的介绍,读者可以更加深入地理解这两个条件构造器的使用方法,并在实际项目中灵活应用,感兴趣的朋友跟随小编一起看看吧
    2024-01-01
  • Java web项目中的强制登录功能实现代码

    Java web项目中的强制登录功能实现代码

    本文给大家分享Java web项目中的强制登录功能实现代码,为了避免直接进入项目中存在的页面,使用filter过滤器,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-11-11
  • SpringMVC统一异常处理实例代码

    SpringMVC统一异常处理实例代码

    这篇文章主要介绍了SpringMVC统一异常处理实例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Google Guava 缓存工具使用详解

    Google Guava 缓存工具使用详解

    这篇文章主要介绍了Guava自加载缓存LoadingCache使用指南,通过这些内容介绍,了解了LoadingCache的基本原理和用法,包括如何创建和配置缓存,以及如何结合Java 8的特性来优化代码,需要的朋友可以参考下
    2023-12-12
  • Java 对 Properties 文件的操作详解及简单实例

    Java 对 Properties 文件的操作详解及简单实例

    这篇文章主要介绍了Java 对 Properties 文件的操作详解及简单实例的相关资料,需要的朋友可以参考下
    2017-02-02

最新评论