package com.string;
public class test1 {
public static void main(String[] args){
String str1 = new String("abcdefg");
String str2 = "abcdefg";
String str3 = "abcdEFG";
String str4 = "def";
System.out.println(str1); //String重写了toString()方法,直接输出字符串的值
System.out.println(str2);
System.out.println(str2==str1);//输出false:abcdrfg在常量池里,str1存的是堆里对象的地址,str2存的是常量的地址
//字符串比较用equals
System.out.println(str1.equals(str2));//输出true
//charAt()方法
System.out.println(str2.charAt(0));//返回第一个字符
//length()
System.out.println(str1.length());//输出7,字符串长度
System.out.println(str1.charAt(str1.length()-1));//输出字符串最后一个字符
//equalsIgnoreCase()
System.out.println(str2.equals(str3));//输出false
System.out.println(str2.equalsIgnoreCase(str3));//输出true
//indexOf(),返回从左到右子串在主串中第一次出现的起始位置
System.out.println(str2.indexOf(str4));//输出3
System.out.println("abcdefg".indexOf("DF"));//输出-1
//lastIndexOf(),返回从末尾开始找,第一个子串在主串中的索引位置,未找到返回-1
System.out.println("abcdefgefg".lastIndexOf("efg"));//输出7
//replace()
String str5 = "abcdbcd".replace('d','D');
System.out.println(str5);//输出abcDbcD
String str6 = "abcdbcd".replace("cd","HELLO");
System.out.println(str6);//输出abHELLObHELLO
//startsWith()/endsWith()
System.out.println("abcd".startsWith("abc"));//true
System.out.println("abcd".endsWith("abc"));//false
//substring()截取字符串,截取的都是新字符串和老字符串没有关系
String str7 = "abcdefg1234567".substring(6);
System.out.println(str7);//输出g1234567
String str8 = "abcdefg1234567".substring(6,11);//包头不包尾
System.out.println(str8);//g1234
//toUpperCase()/toLowerCase()
System.out.println("abcdE".toUpperCase());//ABCDE
System.out.println("abcdE".toLowerCase());//abcde
//trim()删除该串中头部和尾部的空格
String str9=" a b ";//长度7
String str10 = str9.trim();
System.out.println(str10.length());//输出3
System.out.println(str10);//输出“a b”
System.out.println(str9.replace(" ",""));//输出“ab”
System.out.println(str9);//输出" a b "
//String是不可变字符序列,所有的替换、截取、去空格、转换大小写都是生成了新字符串,老字符串不变
}
}
Java学习笔记(十)——String类基本用法
最新推荐文章于 2024-07-20 23:55:03 发布