java String 常用方法

简介: java String 常用方法

1  length()方法

String类中的 length()方法将返回字符串对象的长度

String string = "abcd";
System.out.println(string.length());

输出 : 4

2   compareTo()方法

String类中的compareTo()方法将返回两个字符串对象的比较结果,若相等,返回0。不相等时,从两个字符串第1个字符开始比较,返回第一个不相等的字符差;另一种情况,较长字符串的前面部分恰巧是较短的字符串,返回它们的长度差。

String s1 = "abc";
String s2 = "abcd";
String s3 = "abcdfg";
String s4 = "1bcdfg";
String s5 = "cdfg";
System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1长度小1)
System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1长度小3)
System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII码是97,"1"的的ASCII码是49,所以返回48)
System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII码是97,"c"的ASCII码是99,所以返回-2)

3   substring()方法

String类中有两个substring()方法,第一种如下:

1 String.substring(int start)

其中,start为要开始截取的位置的索引,方法将返回一个字符串,内容为原字符串从start位置开始到原字符串结束中间的数据。

String str = "hello word!";
System.out.println(str.substring(1));
System.out.println(str.substring(3));
System.out.println(str.substring(6));

输出结果:

ello word!

lo word!

ord!

如果start大于字符串的长度,将会抛出越界异常。

第二种substring()方法:

2 String.substring(int start, int end)

其中,start为开始位置索引,end为结束为止索引,方法将返回一个字符串,内容为原字符串从start位置开始到end位置结束中间的数据。

String str = "hello word!";
System.out.println(str.substring(1, 4));
System.out.println(str.substring(3, 5));
System.out.println(str.substring(0, 4));

输出结果:

ell

lo

hell

4  indexOf()方法

indexOf()方法用于在String类的对象中查找子字符串,方法返回一个整数值,为子字符串的开始位置,若存在多个子字符串,返回数值最小的整数值;如果没有找到子字符串,返回-1

String str = "abcdefghijklmnabc";
System.out.println(str1.indexOf("c"));  //结果为2,为字符"c"第一次出现的位置
System.out.println(str1.indexOf("x"));  //结果为-1,没有找到字符"x"

补充:

lastIndexOf() :  获取指定字符串最后一次出现的索引

5  equals()方法

java中如果要判断两个基础数据类型是否相等,使用的是双等号,例如:1是否等于1,使用的就是1==1,而判断字符串是否相等需要使用equals方法,这是因为,每一个字符串都可能会有不同的内存地址,而  == 判断的是内存地址是否一致。而有很多情况,两个字符串的内存地址是不同的,但是字符串的值都是一致的,这样使用 == 就不能准确的验证他们是否相等了。

String str1 = new String("张三");
String str2 = new String("张三");
System.out.println(str1 == str2);
System.out.println(str1.equals(str2));

输出结果:

false

true  

补充:equalsIgnoreCase() : 判断字符是否相同,忽略大小写区别

          startsWith(): 判断是否以指定的字符串开头

          endsWith(): 判断是否以指定的字符串结尾

          isEmpty(): 判断是否字符串是否为空

6  split()方法

在处理字符串的时候我们经常需要将他们切割,然后分别处理,比如我们有一个字符串:张三,李四,王五,赵六,现在我们想要将他们的名字拆分出来,变成一个单独的字符串。

String str = "张三,李四,王五,赵六";
String[] names = str.split(",");
for (int i = 0; i < names.length; i++) {
    System.out.println(names[i]);
}

输出:

张三

李四

王五

赵六

7  trim()方法

去掉字符串起始前和结束后的空格。

String str = " this is a trim ";
       System.out.println(str);
       System.out.println(str.trim());

输出:

this is a trim

this is a trim

8  concat()方法

连接两个字符串

9  charAt()方法

截取指定索引的字符

10  replace()方法

字符串替代输入 要替换 与 替换字符即可

String str = "this is a replace";
System.out.println(str.replace('s','i'));

输出:

thii ii a replace

11 字符串与字符转化

copyValueOf  字符到字符串

getChars  字符串到字符

12 大小写转化

toLowerCase 小写转化

toUpperCase 大写转化


目录
相关文章
|
22天前
|
消息中间件 Java Kafka
在Java中实现分布式事务的常用框架和方法
总之,选择合适的分布式事务框架和方法需要综合考虑业务需求、性能、复杂度等因素。不同的框架和方法都有其特点和适用场景,需要根据具体情况进行评估和选择。同时,随着技术的不断发展,分布式事务的解决方案也在不断更新和完善,以更好地满足业务的需求。你还可以进一步深入研究和了解这些框架和方法,以便在实际应用中更好地实现分布式事务管理。
|
28天前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
67 9
|
8天前
|
存储 JavaScript Java
Java 中的 String Pool 简介
本文介绍了 Java 中 String 对象及其存储机制 String Pool 的基本概念,包括字符串引用、构造方法中的内存分配、字符串文字与对象的区别、手工引用、垃圾清理、性能优化,以及 Java 9 中的压缩字符串特性。文章详细解析了 String 对象的初始化、内存使用及优化方法,帮助开发者更好地理解和使用 Java 中的字符串。
Java 中的 String Pool 简介
|
13天前
|
缓存 安全 Java
java 为什么 String 在 java 中是不可变的?
本文探讨了Java中String为何设计为不可变类型,从字符串池的高效利用、哈希码缓存、支持其他对象的安全使用、增强安全性以及线程安全等方面阐述了不可变性的优势。文中还通过具体代码示例解释了这些优点的实际应用。
java 为什么 String 在 java 中是不可变的?
|
25天前
|
JSON Java 关系型数据库
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
在Java中,使用mybatis-plus更新实体类对象到mysql,其中一个字段对应数据库中json数据类型,更新时报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
37 4
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
|
8天前
|
存储 Java
Java 11 的String是如何优化存储的?
本文介绍了Java中字符串存储优化的原理和实现。通过判断字符串是否全为拉丁字符,使用`byte`代替`char`存储,以节省空间。具体实现涉及`compress`和`toBytes`方法,前者用于尝试压缩字符串,后者则按常规方式存储。代码示例展示了如何根据配置决定使用哪种存储方式。
|
21天前
|
安全 Java 开发者
Java中WAIT和NOTIFY方法必须在同步块中调用的原因
在Java多线程编程中,`wait()`和`notify()`方法是实现线程间协作的关键。这两个方法必须在同步块或同步方法中调用,这一要求背后有着深刻的原因。本文将深入探讨为什么`wait()`和`notify()`方法必须在同步块中调用,以及这一机制如何确保线程安全和避免死锁。
36 4
|
21天前
|
Java
深入探讨Java中的中断机制:INTERRUPTED和ISINTERRUPTED方法详解
在Java多线程编程中,中断机制是协调线程行为的重要手段。了解和正确使用中断机制对于编写高效、可靠的并发程序至关重要。本文将深入探讨Java中的`Thread.interrupted()`和`Thread.isInterrupted()`方法的区别及其应用场景。
24 4
|
23天前
|
Java
在Java中如何将基本数据类型转换为String
在Java中,可使用多种方法将基本数据类型(如int、char等)转换为String:1. 使用String.valueOf()方法;2. 利用+运算符与空字符串连接;3. 对于数字类型,也可使用Integer.toString()等特定类型的方法。这些方法简单高效,适用于不同场景。
47 7
|
19天前
|
Java 数据处理 数据安全/隐私保护
Java处理数据接口方法
Java处理数据接口方法
24 1