网站首页 > java教程 正文
String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象。java把String类声明的final类,不能有子类。String类对象创建后不能修改,由0或多个字符组成,包含在一对双引号之间,常用的方法如下:
- 替换字符串:str.replace(char old ,char new) 将old用new替代
- 比较:str.equals(Object obj) 比较两对象
- 获取字符串长度:str.length()
- 大小写转换:str.toLowerCase() 将字符串内的字符改写成小写,str.toUpperCase() 将字符串内的字符改写成大写
- 截取字符串:str.substring(int1,int2) 取出字符串内第int1位置到int2的字符串
- 转数组:str.split(regex) regex是分隔符
- 去除首尾空格:str.trim()
工具类常用方法:
1、字符串非空判断
public static final boolean isNotBlank(final String str){
return (str != null && !"".equals(str));
}
public static final boolean isBlank(final String str){
return !isNotBlank(str);
}
2、判断字符串是否只由数字和字母组成
public static boolean getLetterAndNum(final String value){
if (value.matches("[0-9a-zA-Z]*")){
return true;
}
return false;
}
3、对象转String
public static String toString(Object str){
return isEmpty(str) ? "" : String.valueOf(str);
}
4、判断sub在str中出现的次数
public static int countOccurrencesOf(String str, String sub) {
if (isBlank(str) || isBlank(sub)) {
return 0;
}
int count = 0;
int pos = 0;
int idx;
while ((idx = str.indexOf(sub, pos)) != -1) {
++count;
pos = idx + sub.length();
}
return count;
}
String、StringBuffer、StringBuiler的区别:String是不可变字符串,StringBuffer和StringBuilder是长度可变的字符串,区别是前者是线程安全的,后者是线程不安全的,同样后者的效率也会更高。
猜你喜欢
- 2024-10-01 Java中String类字符串拼接谁的效率最低
- 2024-10-01 100个Java工具类之2:字符串之多种个性化格式处理
- 2024-10-01 每天积累一点点(Java基础——》String类学习——one day)
- 2024-10-01 Java动态加载Jar实例解析(java动态加载类框架)
- 2024-10-01 Java中如何使用正则技术提取html中的任意内容
- 2024-10-01 Java String 常用方法,涵盖全部(java string的用法)
- 2024-10-01 在Java中将String转换为char(java string转换char)
- 2024-10-01 「JavaWeb基础」文件上传和下载(修订版)
- 2024-10-01 浅谈Java中字符串的初始化及字符串操作类
- 2024-10-01 MySql字符串拆分实现split功能(字段分割转列、转行)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)