CTRL+p提示
使用层面
public class test2 {
public static void main(String[] args) {
String email="111@qqq.com.cn";
String suffix = email.substring(email.lastIndexOf("@"));
if(email.indexOf("@")!=-1 && suffix.contains(".")
&&suffix.substring(0,suffix.indexOf(".")).length()>=2){
}
System.out.println(String.join("#",email.split(".")));
}
}
package kgc_byme.day20;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
/**
* @Description: TODO
* @author: azzhu
* @date:2021/6/7 8:54
*/
public class TestString {
public static void main(String[] args) {
//1.构造方法
char[] cc = {'a','b','c'};
// String str = new String(cc);
// String str2 = new String(cc,0,2);
byte[] bb = {1,2,4,8};
// String str2 = new String(bb, StandardCharsets.UTF_8);
// System.out.println(str2);
// String str2 = new String(bb, Charset.forName("utf-8"));
//这种写法,工具会提示多余
// String ss = new String("aaaa");
String str = " aa日照香炉生紫烟,李白来到烤鸭店,口水流下三千尺,想吃烤鸭没有钱Bb ";
//常用的方法,必须掌握
//1.获取长度 length()
System.out.println("长度:" + str.length());
//2.切割字符串,转为string数组
//注意,若你的切割符没有,将整个字符串当成一个整体,即字符串数组中只有一个元素
String[] split = str.split("-");
System.out.println("---->" + Arrays.toString(split));
System.out.println("---->" + split.length);
//3.字母大小写转换
System.out.println(str.toUpperCase());
System.out.println(str.toLowerCase());
//4.去掉两端空格
System.out.println(str.trim());
//5.判断是否包含某个子串
System.out.println(str.contains("紫烟"));
//6.获取某个字符串 charAt()
System.out.println(str.charAt(4));
//7.截取子串
//从startIndex开始,直接截取到最后
System.out.println("截取:" + str.substring(3));
//[startIndex,endIndex)
System.out.println("截取2:" + str.substring(3,4));
//8.查找某个子串第一次/最后一次出现的位置
System.out.println("烤鸭第一次出现的下标:" + str.indexOf("烤鸭"));
//指定从哪个index开始找!!!
System.out.println("烤鸭第一次出现的下标:" + str.indexOf("烤鸭",16));
System.out.println("烤鸭最后一次出现的下标:" + str.lastIndexOf("烤鸭"));
//9.将字符串转为对应的字符或者字节数组
char[] chars = str.toCharArray();
System.out.println("转换后的字符数组:" + Arrays.toString(chars));
//将字符串变为一个字节数组
byte[] bytes = str.getBytes(StandardCharsets.UTF_8);
System.out.println("转换后的字节数组:" + Arrays.toString(bytes));
//10.以xx开头或结尾
System.out.println(str.startsWith("a"));
System.out.println(str.endsWith(" "));
//11.字符串的拼接
System.out.println(str.concat("aaa"));
//12.替换
System.out.println(str.replace("烤鸭", "烤鸡"));
//13.判空
System.out.println(str.isEmpty());
//14.将字符串数组用指定的符号连接起来,变为一个字符串
// char[] ccs = {'1','2','5'};
String[] aaa = {"111","2222","3333"};
String result = String.join("-",aaa);
System.out.println(result);
}
}
源码分析
String toString
public static String toString(Object[] a) {
if (a == null)
return "null";
int iMax = a.length - 1;
if (iMax == -1)
return "[]";
StringBuilder b = new StringBuilder();
b.append('[');
for (int i = 0; ; i++) {
b.append(String.valueOf(a[i]));
if (i == iMax)
return b.append(']').toString();
b.append(", ");
}
}