java实现的统计字符算法示例
时间:2019-04-07
本文章向大家介绍java实现的统计字符算法示例,主要包括java实现的统计字符算法示例使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文实例讲述了java实现的统计字符算法。分享给大家供大家参考,具体如下:
统计字符:
概述:给定字符串,将它们进行分类,分别的去统计它们的个数及其字符
分类的有:字母 数字 中文 空格 等等
算法思路分析:
分别统计即可:
下面给出代码:(代码仅供参考)
package javastudy; public class Testit6 { public static void main(String[] args) { String str = "...天2气 ;[1] aA"; // 英文 中文 数字 空格 其他 System.out.printf("字符串长度:%d\n", str.length()); //输出总字符串的长度! StringBuilder[] s = new StringBuilder[4]; for (int i = 0; i < s.length; i++) { s[i] = new StringBuilder(); //生成存放字符的数组 } for (int i = 0; i < str.length(); i++) { if (str.charAt(i) >= 'A' && str.charAt(i) <= 'z') { //判断英文字符 s[0].append(str.charAt(i)); //存放符合条件的字符 } else if (str.charAt(i) >= 19968 && str.charAt(i) <= 171941) { //判断中文 这只是一种判断中文的方法 s[1].append(str.charAt(i)); } else if (str.charAt(i) >= '0' && str.charAt(i) <= '9') { //判断数字字符 s[2].append(str.charAt(i)); } else { //其他 另外的判断空格值之类的,自己可以去百度上查查 s[3].append(str.charAt(i)); } } for (int i = 0; i < s.length; i++) { //打印输出 System.out.printf("%d\t%s\n", s[i].length(), s[i].toString()); } } }
输出结果:
字符串长度:14 4 []aA 3 天气; 2 21 5 ...
PS:这里再为大家推荐2款非常方便的统计工具供大家参考使用:
在线字数统计工具:
http://tools.jb51.net/code/zishutongji
在线字符统计与编辑工具:
http://tools.jb51.net/code/char_tongji
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
- C# 调用PowerShell方法
- 使用Visual Studio 2010 一步一步创建Powershell Module 和 Cmdlet
- [SQLServer大对象]——FileTable初体验
- JavaScript闭包,只学这篇就会了
- [数据库基础]——编码标准之格式
- [数据库基础]——编码标准之结构
- 2017前端开发手册三-前端职位描述
- [.NET自我学习]Delegate 泛型
- [数据库基础]——图解JOIN
- ubuntu搭建内网穿透服务Ngrok
- SQL Server 性能优化之——T-SQL 临时表、表变量、UNION
- node.js 学习笔记
- SQL Server 性能优化之——T-SQL TVF和标量函数
- C# 6.0 功能预览 (一)
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- spring-boot自定义starter
- 实操 | kafka如何手动异步提交offset
- 解惑 | 为什么我根据时间戳获得的offset为空呢?
- spring-boot使用aop进行日志记录
- openGauss备机追数Catchup过程中主库写入阻塞问题
- openGauss830版本中对于备份模块的增强与当前问题
- spring boot自动配置原理
- 网站日志分析完整实践
- 聊聊分布式下的WebSocket解决方案
- pod安装、更新库失败,github连接超时问题
- Mysql如何给字符串添加索引(前缀索引)
- Python中5对必知的魔法方法
- java的三种代理
- 不写爬虫,也能读取网页的表格数据
- ReentrantLock的公平与非公平