fantasticDream

_数组_String类的补充_内存分析

_数组_String类的补充_内存分析

 

 

 

 package TestString;

/**
* String:不可变字符序列!
* 1.练习String类的常用方法
* 2.结合数组查看源码
* 3.提高:将String类中相关方法的源码,看一看
* @author 神奇的梦
*
*/

public class TestString {
public static void main(String[] args) {
String str="abcd";
String str1=new String();//给了一个长度为0的字符数组
String str2=new String("看得见");
char[] c = {'a','b'};
String str3=new String(c);
String str4=new String("abcd");
// charAt根据索引找出数组中的单元
System.out.println(str.charAt(2));//输出c
// str str5
System.out.println(str.equals(str4));
// System.out.println(str==str2);
// Object instanceof String 如果值是对象
/**
* boolean result = obj instanceof class
*
*其中 obj 为一个对象,Class 表示一个类或者一个接口。
*当 obj 为 Class 的对象,
*或者是其直接或间接子类,或者是其接口的实现类,结果result 都返回 true,
*否则返回false。
*注意:编译器会检查 obj 是否能转换成右边的class类型,
*如果不能转换则直接报错,如果不能确定类型,则通过编译,具体看运行时定。
* ————————————————
*/
String str22="abcd";
// String str22=str;
// equals可以比较内容是否相等
String str33="def";
String str44="def";
System.out.println(str33.equals(str44));//true
System.out.println(str33==str44);//true
// indexOf寻找对应的值,找到了返回1,找不到返回-1.
System.out.println(str33.indexOf('e'));
// substring 从0开始到结尾 结尾等于的长度减开始 截取字符串 0:截取全部
String s=str.substring(0);
System.out.println(s);
// replace 找到对应的字符串并替换为新的字符串
// 如果没找到返回当前对象的引用
System.out.println(str33);
String a2=str33.replace("ef", "*");
System.out.println(a2);
// split 把字符串进行切割,返回一个数组
String str5="abcde,rrtt,cccee";
String[] strArray=str5.split(",");
for(int i=0;i<strArray.length;i++) {
System.out.println(strArray[i]);
}
// trim去除首未空格
String str6=" aa bb ";
String str7=str6.trim();
System.out.println(str7+str7.length());
// toCharArray() 返回新的字符数组 将字符串对象中的字符转换为一个字符数组
String re=new String("wefdfds");
char r[]=re.toCharArray();
for(int i=0;i<r.length;i++) {
System.out.println(r[i]);
}
// equalsIgnoreCase()
// 比较字符串到另一个字符串(忽略大小写)的情况
System.out.println("abC".equalsIgnoreCase("aBC"));
// indexOf寻找对应的值,找到了返回1,找不到返回-1.从左向右找
System.out.println("abCBD".indexOf("CB"));
// lastIndexOf寻找对应的值,找到了返回1,找不到返回-1.从右向左找
System.out.println("abCBD".lastIndexOf("D"));
// startsWith("ab")查看是否从字符串"ab"开头
System.out.println("abCBD".startsWith("ab"));
// endsWith("BD")查看是否从字符串"BD"结束
System.out.println("abCBD".endsWith("BD"));
// toLowerCase()转小写
System.out.println("Abcde".toLowerCase());
// toUpperCase()转大写
System.out.println("Abcde".toUpperCase());
System.out.println("##############");
String g="a";
for(int i=0;i<3;i++) {
g+=i;
}
System.out.println(g);
// 这是常见的拼字符串代码,浪费空间 可以利用字符串叠加
String gh= new String("a");
for(int i=0;i<3;i++) {
gh+=i;
}
System.out.println(gh);
}
}

posted on 2022-06-15 19:32  神奇的梦  阅读(20)  评论(0编辑  收藏  举报

导航