16.String
1.构造方法
2.String字符串的特点
3.字符串的比较
4.字符串拼接内存图
//字符串是类 String str1= "这是一个字符串"; //常用的字符串声明方法 String str2= "这是一个字符串"; // String str4 = new String("哈哈哈哈");//不常用的字符串声明方法 // String str3 = new String("哈哈哈哈"); /**字符串长度:str1.length()*/ System.out.println(str1.length()); /**字符串比较:str1.equals(str2),如果不是用new关键字开辟的新字符串,例如str1和str2就可以使用==比较, * 不然用new开辟的新字符串,例如str3和str4他们的地址都是新的,而==比较的是地址,所以即使内容相同结果也是false; *因为在储存数据的时候,相同的内容,如果没有new,也就是没有开辟新空间,他们的存放地址一样,所有==的结果是true */ System.out.println(str1.equals(str2)); //忽略大小写比较:str5.equalsIgnoreCase(str6) String str5= "hello"; String str6= "Hello"; System.out.println(str5.equalsIgnoreCase(str6)); //转化成大写 System.out.println(str5.toUpperCase()); //转化成小写 System.out.println(str5.toLowerCase()); //拼接字符串:方法1:+;方法2:s1.concat(str2) // String s1="zhangsan"; // String s2="lisi"; // String s3=s1+s2; // String s4=s1.concat(str2); //重点讲解: //获取索引:s1.indexOf(".");返回结果是整形,没有找到结果是-1;查找对象可以是字符,字符串,整形(奥克吗表), String s1="zhangsan@qq.com"; System.out.println(s1.indexOf(".")); System.out.println(s1.indexOf("qq")); System.out.println(s1.indexOf('a')); System.out.println(s1.indexOf(97));//其实就是查找'a'的位置 //获取索引:s1.lastIndexOf('a'):查找字符串里最后一个a的位置 System.out.println(s1.lastIndexOf('a'));//查找字符串里最后一个a的位置 //indexOf(arg1,arg2):两个参数,参数1:要查找的字符串;参数2:从索引为arg2的位置开始查找; System.out.println(s1.indexOf('a',3)); //判断以什么什么结尾:s1.endsWith("com"):返回boolean类型结果; System.out.println(s1.endsWith("com")); //判断以什么什么开头:s1.startsWith("zh"):返回boolean类型结果; System.out.println(s1.startsWith("zh")); //是否包含某一个元素:s1.contains("@"):返回boolean类型结果; System.out.println(s1.contains("@")); //截取字符串:包含空格 String str="hello every day!be happy"; str.substring(7,12); System.out.println(str.substring(7,12)); System.out.println(str.substring(7)); //去除空格:str.trim();只去前后空格,中间空格不去:返回新字符串 System.out.println(str.trim()); str.trim(); //分割:str5.split("-");结果是字符串类型数组 String str5="h-e-l-l-o"; String str6[]=str5.split("-"); for(String i:str6){ System.out.print(i); } //替换数组中的某一部分:str5.replace('e','E'):老字符串不变,返回新字符串 String str7 = str5.replace('e','E'); System.out.println(str5);//h-e-l-l-o System.out.println(str7);//h-E-l-l-o //获取索引为特定值的字符 String str8="hello"; char c=str8.charAt(1);//获取索引为1的字符 ------------------------------------------------------------------------------- String name="张三"; String age="10";
//字符串是类
String str1= "这是一个字符串"; //常用的字符串声明方法
String str2= "这是一个字符串";
//String str4 = new String("哈哈哈哈");//不常用的字符串声明方法
//String str3 = new String("哈哈哈哈");
/**字符串长度:str1.length()*/
System.out.println(str1.length());
/**字符串比较:str1.equals(str2),如果不是用new关键字开辟的新字符串,例如str1和str2就可以使用==比较,
* 不然用new开辟的新字符串,例如str3和str4他们的地址都是新的,而==比较的是地址,所以即使内容相同结果也是false; *因为在储存数据的时候,相同的内容,如果没有new,也就是没有开辟新空间,他们的存放地址一样,所有==的结果是true */
System.out.println(str1.equals(str2));
//忽略大小写比较:str5.equalsIgnoreCase(str6)
String str5= "hello";
String str6= "Hello";
System.out.println(str5.equalsIgnoreCase(str6));
//转化成大写
System.out.println(str5.toUpperCase());
//转化成小写
System.out.println(str5.toLowerCase());
//拼接字符串:方法1:+;方法2:s1.concat(str2)
//String s1="zhangsan";
//String s2="lisi";
//String s3=s1+s2;
//String s4=s1.concat(str2);
//重点讲解:
//获取索引:s1.indexOf(".");返回结果是整形,没有找到结果是-1;查找对象可以是字符,字符串,整形(奥克吗表),
String s1="zhangsan@qq.com";
System.out.println(s1.indexOf("."));
System.out.println(s1.indexOf("qq"));
System.out.println(s1.indexOf('a'));
System.out.println(s1.indexOf(97));//其实就是查找'a'的位置
//获取索引:s1.lastIndexOf('a'):查找字符串里最后一个a的位置
System.out.println(s1.lastIndexOf('a'));//查找字符串里最后一个a的位置
//indexOf(arg1,arg2):两个参数,参数1:要查找的字符串;参数2:从索引为arg2的位置开始查找;
System.out.println(s1.indexOf('a',3));
//判断以什么什么结尾:s1.endsWith("com"):返回boolean类型结果;
System.out.println(s1.endsWith("com"));
//判断以什么什么开头:s1.startsWith("zh"):返回boolean类型结果;
System.out.println(s1.startsWith("zh"));
//是否包含某一个元素:s1.contains("@"):返回boolean类型结果;
System.out.println(s1.contains("@"));
//截取字符串:包含空格
String str="hello every day!be happy";
str.substring(7,12);
System.out.println(str.substring(7,12));
System.out.println(str.substring(7));
//去除空格:str.trim();只去前后空格,中间空格不去:返回新字符串
System.out.println(str.trim());
str.trim();
//分割:str5.split("-");结果是字符串类型数组
String str5="h-e-l-l-o";
String str6[]=str5.split("-");
for(String i:str6){
System.out.print(i);
}
//替换数组中的某一部分:str5.replace('e','E'):老字符串不变,返回新字符串
String str7 = str5.replace('e','E');
System.out.println(str5);//h-e-l-l-o
System.out.println(str7);//h-E-l-l-o
//获取索引为特定值的字符
String str8="hello";
char c=str8.charAt(1);//获取索引为1的字符
-------------------------------------------------------------------------------
String name="张三";
String age="10";