String(系统类常用方法):
字符串是常量:
1.字符串存在常量池(方法区)中;
2.字符串进行操作时 返回的是新的字符串 原字符串不更改 (本身没有交换 而是引用地址变化 指针重新指向);
1."==": 判断两地址是否一样
2."equals":比较两个字符串中的每个字符
字符串方法的调用:
获取:
// 根据索引获取字符串中字符
// 传入索引返回对应字符
public static void fun() {
String string = "yaoming";
char c = string.charAt(5);
System.out.println(c);
}
// 根据字符获取在字符串中的位置
// 传入字符返回对应的索引
public static void fun() {
String string = "yaoming";
int index = string.indexOf('a');
System.out.println(index);
}
// 传入查找索引 从当前位置开始查找
public static void fun() {
String string = "yaoming";
int index2 = string.indexOf('g', 4);
System.out.println(index2);
}
// 传入字符串 查找对应位置
public static void fun() {
String string = "yaoming";
int index3 = string.indexOf("long");
System.out.println(index3);
}
判断:
// 是否包含这个字符串
// 是否以这个前缀开头
// 是否以这个后缀结尾
public static void fun() {
String string = "www.baidu.com";
// 包含
boolean b1 = string.contains("baidu");
System.out.println(b1);
// 前缀
boolean b2 = string.startsWith("www");
System.out.println(b2);
// 后缀
boolean b3 = string.endsWith("com");
System.out.println(b3);
}
拼接:
public static void fun() {
// 包含
String string1 = "wanglong";
String string2 = "a";
boolean b = string1.contains(string2);
System.out.println(b);
// 拼接字符串
String string3 = string1 + string2;
System.out.println(string3);
// concat方法 返回的是一个新的字符串
String newString = string1.concat(string2);
System.out.println(newString);
}
/*
* 替换 切割 获取子串 转换大小写 去空格 比较
* 判断两个字符串相等(忽略大小写)
* 把字符数组 转化为 字符串
* 把字符串转化为 字符数组
* 判断字符串是否为空
*/
替换:
public static void fun() {
String string = "wanglong";
// 替换字符
String replaceString = string.replace('a', 'x');
System.out.println(replaceString);
// 替换字符串
String replace2 = string.replace("long", "song");
System.out.println(replace2);
}
public static void fun() {
String string = "wang,long,z,n,b";
// 按逗号切割
String[] strings = string.split(",");
// 遍历
for (int i = 0; i < strings.length; i++) {
System.out.println(strings[i]);
}
// 增强for循环 用来快速打印(快速遍历)
// 冒号后 要遍历的容器
// 冒号前 代表的是容器中每一个元素
for (String string2 : strings) {
// 遍历时 直接打印每一个元素
System.out.println(string2);
}
}
获取子字符串:
public static void fun() {
String string = "wanglong";
// 从索引处 开始截取 返回的从索引处往后的字符串
String substring = string.substring(5);
System.out.println(substring);
// 截取时 留头不留尾
String substring2 = string.substring(0, 4);
System.out.println(substring2);
}
转换大小写:
public static void fun() {
String string1 = "wanglong";
// 转大写
String upperCase = string1.toUpperCase();
System.out.println(upperCase);
String string2 = "DINGPENG";
// 转小写
String lowerCase = string2.toLowerCase();
System.out.println(lowerCase);
}
去空格(首尾空格):
public static void fun() {
String string = " abc def ";
String trimStr = string.trim();
System.out.println(trimStr);
}
字符串比较:
public static void fun() {
String s1 = "abcd";
String s2 = "abc";
// 进行比较
int num = s1.compareTo(s2);
System.out.println(num);
char c = '剑';
System.out.println((int)c);
}
判断两个字符串相等:
public static void fun() {
String string1 = "wanglong";
String string2 = "wangLong";
// 忽略大小写判断是否相等
boolean b = string1.equalsIgnoreCase(string2);
System.out.println(b);
}
判断字符串是否为空:
public static void fun() {
char[] array = {'w','a','n','g'};
// 转字符串
String string = new String(array);
System.out.println(string);
// int转字符串
int num = 5;
String newStr = String.valueOf(num);
System.out.println(newStr);
// 字符串 转 字符数组
String string1 = "wanglong";
char[] charArray = string1.toCharArray();
// 遍历
for(char c : charArray) {
System.out.println(c);
}
// 判断字符串是否为空
String string3 = "wanglong";
boolean b = string3.isEmpty();
System.out.println(b);
// 获取字符串长度
System.out.println(string3.length());
}