String类常用的API
String类常用的API
字符串内容的比较:
注意:
不能使用 == 去比较两个字符串的内容。原理:比较的是字符串的地址。
(如果两个字符串都是使用""进行赋值,那么他们都是放在常量池中,只要字符串内容一致,那么他们的地址相同,比较返回值为true。如果一个字符串为""直接赋值一个字符串为对象赋值,那么比较返回值为false,因为前者被存在常量池中一个被放在堆内存中两者的地址不同,即比较结果为false。)
内容比较:
推荐使用String类提供的 equals 方法:只关心内容一致即可。
| 方法名 | 说明 | 应用 |
|---|---|---|
| public boolean equals(Object anObject) | 将此字符串与指定对象进行比较。只关心字符内容是否一致! | 登录账号密码的比较 |
| public boolean equalsIgnoreCase(String anotherString) | 将此字符串与指定对象进行比较,忽略大小写比较字符串,只关心字符内容是否一致! | 验证码的比较 |
String常用API(其他的非常多,后面继续补充)
| 方法名 | 说明 |
|---|---|
| public intlength() | 返回此字符串的长度 |
| public char charAt(int index) | 获取某个索引位置处的字符 |
| public char[] toCharArraiy(): | 将当前字符串转换成字符数组返回 |
| public String substring(int beginIndex, int endIndex) | 根据开始和结束索引进行截取,得到新的字符串(包前不包后) |
| public String substring(int beginIndex) | 从传入的索引出截取,截取到末尾,得到新的字符串 |
| public String replace(CharSequence target,CharSequence replacement) | 得到新值,将字符串中的旧值替换,得到新的字符串 |
| public String[] split(String regex) | 根据传入的规则切割字符串,得到字符串数组返回 |
代码:
//1.返回此字符串的长度
name.length();
//2.获取某个索引位置处的字符
for (int i = 0; i < name.length(); i++) {
char ch =name.charAt(i);
System.out.println(ch);
}
//3.将当前字符串转换成字符数组返回
char[] chars2 = name.toCharArray();
for (int i = 0; i < chars2.length; i++) {
System.out.println(chars2[i]);
}
//4.根据开始和结束索引进行截取,得到新的字符串(包前不包后)
String name2 = "java是最厉害的编程语言!";
String rs = name2.substring(0, 9);
System.out.println(rs); //java是最厉害的
//5.从传入的索引出截取,截取到末尾,得到新的字符串
String rs2 = name2.substring(4);
System.out.println(rs2); //是最厉害的编程语言!
//6.得到新值,将字符串中的旧值替换,得到新的字符串
String name3 = "金三胖是最厉害的80后!我好爱金三胖";
String rs3 = name3.replace("金三胖", "***");
System.out.println(rs3);
//7.根据传入的规则切割字符串,得到字符串数组返回
String name4 = "王宝强,贾乃亮,陈羽凡";
String[] names = name4.split(",");
for (int i = 0; i < names.length; i++) {
System.out.println("选择了:" + names[i]);
}
本文来自博客园,作者:Haziy,转载请注明原文链接:https://www.cnblogs.com/zhangyouren/p/16408370.html
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
博主的文章没有高度、深度和广度,只是凑字数。由于博主的水平不高,不足和错误之处在所难免,希望大家能够批评指出。

浙公网安备 33010602011771号