API
应用程序编程接口
- java API:就是JDK中提供的各种功能的Java类
创建String对象
![MT50O1A5FHTIDZ99%Q]L0Z6.png](p9-juejin.byteimg.com/tos-cn-i-k3…?)
字节数组
byte[] bytes={97,98,99,100};//对饮的assic码
String s=new String(bytes);
System.out.println(s);
输出:abcd
JAVA内存模型
每new一次就会在堆里开辟一个新空间
字符串String类常用方法
比较字符串
![LC81L$3Y0~V%{2{{5{LF7G.png
- boolean equals方法(要比较的字符串) 完全一样的结果才是true,否则为false
- booolean equalsIgnoreCase(要比较的字符串) 忽略大小写的比较
String s1=new String("abc");
String s2="abc";
System.out.println(s1==s2);//引用数据类型比较地址值
boolean result= s1.equals(s2);
System.out.println(result);
输出:
false
true
遍历字符串
- public char charAt(int index):根据索引返回字符
//字符串遍历
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串");
String str = sc.next();
for (int i = 0; i < str.length(); i++) {
//i表示字符串的索引
char c = str.charAt(i);
System.out.println(c);
}
-
public int length():返回字符串的长度
-
数组长度:数组名.length
-
字符串的长度:字符串.length()
//字符串倒置
public static void main(String[] args) {
String result= reverser("abc");
System.out.println(result);
}
public static String reverser(String str){
String result="";
for (int i = str.length()-1; i >=0; i--) {
char c = str.charAt(i);
result = result + c;
}
return result;
}
截取字符串
- String substring(int beginIndex,int endIndex):截取字符串(包头不包尾包左不包右,只有返回值才是截取的小段,)
- String substring(int beginIndex):截取到末尾 -Strinng raplace(旧值,新值):替换
//截取字符串
public static void main(String[] args) {
String phoneNumber="15080226841";
String start=phoneNumber.substring(0,3);//150
String end=phoneNumber.substring(7);//6841
String result=start+"****"+end;
System.out.println(result);//150****6841
}
StringBuilder
作用:提高字符串的操作效率,创建之后里面的内容是可变的(打印对象不是地址值而是属性值)
使用:字符串的拼接或反转
public static void main(String[] args) {
//字符串拼接
int[] arr={1,2,3};
String str=arrToString(arr);
System.out.println(str);//[1,2,3]
}
public static String arrToString(int arr[]){
StringBuilder sb=new StringBuilder();
sb.append("[");
for (int i = 0; i < arr.length; i++) {
if(i==arr.length-1){
sb.append(arr[i]);
}else{
sb.append(arr[i]).append(",");
}
}
sb.append("]");
return sb.toString();
}
常用方法
- public StringBuilder():创建一个空白的可变字符串对象,不含任何内容
- public StringBuilder(String str):根据字符串的内容,来创建可变字符串对象
- public StringBulider append(任意类型):添加数据,并返回对象本身(拼接字符串)
- public String reverse():反转容器中的内容
- public int length():返回长度
- public String to String():把StringBuilder转换为String
链式编程
//链式编程,依赖前一个变量的方法
StringBuilder sb=new StringBuilder();
sb.append("aaa").append("bbb");
System.out.println(sb);//aaabbb
StringJoiner
和StringBuilder一样,提高字符串的操作效率
构造方法
- public StringJoiner(间隔符号):创建一个StringJoiner对象,指定拼接时的间隔符号
- public StringJoinner(间隔符号,开始符号,结束符号):
StringJoiner sj=new StringJoiner("---");
sj.add("aaa").add("bbb");
System.out.println(sj);//aaa---bbb
成员方法
- public StringJoiner add(添加的内容):添加数据,并返回对象本身
- public int length():返回长度
- public String to String():转换为String
字符串原理
![[B$LDFEIU@PIRCMSR4@~(8.png