java实现统计字符串中字符及子字符串个数的方法示例
作者:aitaoke 发布时间:2022-10-14 13:47:40
标签: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程序设计有所帮助。
0
投稿
猜你喜欢
- BufferedImage转换为MultipartFileJava里读取图片或调整图片大小可使用BufferedImage进行操作(参考我另
- 简介这篇文章我一直在纠结到底要不要写,不想写一来因为定时器用法比较简单,二来是面试中也不常问。后来还是决定写了主要是想把自己分析问题思路分享
- 目录Map的computeIfAbsent使用场景和方法常规实现使用computeIfAbsent方法实现Map中computeIfAbse
- 1.基本语法key: value;kv之间有空格大小写敏感使用缩进表示层级关系缩进不允许使用tab,只允许空格缩进的空格数不重要,只要相同层
- 节点通信存在两种模型:共享内存(Shared memory)和消息传递(Messages passing)。内存映射文件对于托管世界的开发人
- 功能目标使用Treeview控件实现点左边的节点,在右边显示相关的页面知识点Treeview命名空间:System.Windows.Form
- 前言:在 Java 语言中,提高程序的执行效率有两种实现方法,一个是使用线程、另一个是使用线程池。而在生产环境下,我们通常会采用后者。为什么
- 引言在实际分布式项目中延迟任务一般不会使用JDK自带的延迟队列,因为它是基于JVM内存存储,没有持久化操作,所以当服务重启后就会丢失任务。在
- 基于JavaFX开发桌面程序注:我也是JAVA FX的初学者之一,自己在学习的时候踩了许多的坑,中文英文的资料查了不少,但是觉得FX技术和其
- 前段时间写了一篇C#解析Lrc歌词文件,对lrc文件进行解析,支持多个时间段合并。本文借下载歌词文件来探讨一下同步和异步方法。 L
- 1、创建实体属性标记public class CellAttribute : Attribute {&n
- 1.下载安装OpenCVhttps://opencv.org/releases/选择合适的平台安装包下载,然后双击安装,也就是解压的过程。这
- =====最大线程数====linux 系统中单个进程的最大线程数有其最大的限制 PTHREAD_THREADS_MAX这个限制可以在 /u
- Spring Boot 简介spring框架功能很强大,但是就算是一个很简单的项目,我们也要配置很多东西。因此就有了Spring Boot框
- 一、概述UDP和TCP是网络通讯常用的两个传输协议,C#一般可以通过Socket来实现UDP和TCP通讯,由于.NET框架通过UdpClie
- 在web页面上我们可以通过frameset,iframe嵌套框架很容易实现各种导航+内容的布局界面,而在winform、WPF中实现其实也很
- 介绍技术之前有用eureka 现在用nacos工作流和gateway接口数据流向数据表新建项目新建cloud-删除src-新建modleEu
- 本文实例汇总了C#路径,文件,目录及IO常见操作。分享给大家供大家参考。具体如下:问题1:如何判定一个给定的路径是否有效/合法;通过Path
- Java 静态绑定与动态绑定 最
- 404这个错误真的是一言难尽!不过大多是配置文件出错,认真修改还是可以的1.web.xml配置错误:默认首页没有写的,在web.xml添加一