java判断字符串中有多少数字字母或者符号

简介: java判断字符串中有多少数字字母或者符号

直接上代码

 
public class TestJava {
 
    public static void main(String[] args) {
        String a = "289r3f950tioperj02ek@!&*%@^!*&%!@o4tu90werjik294uewfji";
        exeAlpNum_one(a);
        System.out.println("===============");
        exeAlpNum_two(a);
    }
 
    /**
     * 判断字母/数字/其它各有多少(ONE)
     * charAt()方法、for循环和ASCII码
     * charAt(int index)返回下标位的字符
     *
     * @param a
     */
    public static void exeAlpNum_one(String a) {
        int number = 0;//数字
        int alphabet = 0;//字母
        int other = 0;//其他
        for (int i = 0; i < a.length(); i++) {
            if ((a.charAt(i) >= 'a' && a.charAt(i) <= 'z') || (a.charAt(i) >= 'A' && a.charAt(i) <= 'Z')) {
                alphabet++;
            } else if ((a.charAt(i) >= '0' && a.charAt(i) <= '9')) {
                number++;
            } else {
                other++;
            }
        }
        System.out.println("字母数量:" + alphabet + "  数字数量:" + number + "    其它:" + other);
    }
 
    /**
     * 判断字母/数字/其它各有多少(TWO)
     * toCharArray()方法、Character内置静态方法isLetter()和isDigit()和foreach函数
     * char[] chs = s1.toCharArray(); // 把字符串转换为字符数组
     * Character.isLetter(ch)//判断是不是数字
     * Character.isDigit(ch)//判断是不是字母
     *
     * @param a
     */
    public static void exeAlpNum_two(String a) {
        int numnum = 0;//数字
        int strnum = 0;//字母
        int othernum = 0;//其它
        char[] chs = a.toCharArray();
        for (char ch : chs) {
            if (Character.isLetter(ch)) {
                strnum++;
            } else if (Character.isDigit(ch)) {
                numnum++;
            } else {
                othernum++;
            }
        }
        System.out.println("字母数量:" + strnum + "  数字数量:" + numnum + "    其它:" + othernum);
    }
}


相关文章
|
18天前
|
存储 安全 Java
Java零基础-字符串详解
【10月更文挑战第18天】Java零基础教学篇,手把手实践教学!
94 60
|
8天前
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
27 6
|
1月前
|
Java 数据库
案例一:去掉数据库某列中的所有英文,利用java正则表达式去做,核心:去掉字符串中的英文
这篇文章介绍了如何使用Java正则表达式从数据库某列中去除所有英文字符。
46 15
|
1月前
|
IDE Java 编译器
Java“找不到符号” 错误怎么查找解决
“找不到符号”是Java编程中常见的编译错误,通常表明代码试图访问未声明或不可见的符号(如类、方法或变量)。解决此问题需检查拼写、导入包是否正确及作用域是否合适。确保使用正确的类路径和库,可有效避免此类错误。若问题依旧,查阅官方文档或使用调试工具定位错误亦为良策。
1287 10
|
1月前
|
Java
JAVA易错点详解(数据类型转换、字符串与运算符)
JAVA易错点详解(数据类型转换、字符串与运算符)
48 4
|
2月前
|
Java 数据库
java小工具util系列1:日期和字符串转换工具
java小工具util系列1:日期和字符串转换工具
50 3
|
2月前
|
SQL Java 索引
java小工具util系列2:字符串工具
java小工具util系列2:字符串工具
16 2
|
2月前
|
存储 移动开发 Java
java核心之字符串与编码
java核心之字符串与编码
21 2
|
Java
JAVA之字母与相对应数字转换
26个字母大小写加起来就是52个。对应的数字范围 System.out.println((char)97);//aSystem.out.println((char)122);//zSystem.out.
1740 0
|
8天前
|
安全 Java 测试技术
Java并行流陷阱:为什么指定线程池可能是个坏主意
本文探讨了Java并行流的使用陷阱,尤其是指定线程池的问题。文章分析了并行流的设计思想,指出了指定线程池的弊端,并提供了使用CompletableFuture等替代方案。同时,介绍了Parallel Collector库在处理阻塞任务时的优势和特点。