一、今日学习
1.String类
(1)实例化String对象
方法一:String name1="张三";
方法二:String name2=new String("李四");
(2)"=="VS"equals"方法
“==”——比较的是引用 "equals"——比较的是具体内容
(3)String两种实例化方式的区别
-
直接赋值方式,创建的对象存放到字符串对象池里,假如存在的,就不会再创建
-
new对象方式,每次都创建一个新的对象
(4)字符串的内容不可变性
字符串的特性:不能改变字符串的内容;只能通过指向一个新的内存地址
(5)String类常用方法及基本使用
- char charAt(int index):返回指定索引处的char值
-
int length():返回此字符串的长度
-
int indexOf():返回指定字符在此字符串中第一次出现处的索引
- String substring(int beginIndex):返回一个新的字符串,它是此字符串的一个子字符串,该子字符串从指定索引处的字符开始,直到此字符串末尾
-
String toUpperCase():使用默认语言环境的规则将此String中的所有字符都转为大写
-
String toLowerCase():使用默认语言环境的规则将此String中的所有字符都转为小写
2.综合实例
编程输入一个字符串,要求去掉前后的空格,然后分别统计其中英文字母,空格,数字和其他字符的个数
1 public class Study { 2 3 public static void main(String[] args) { 4 String str=" adf48 ds84 '& 5# d5 "; 5 //去掉前面和后面的空白 6 String str1=str.trim(); 7 8 int yingWen=0; 9 int kongGe=0; 10 int shuZi=0; 11 int qiTa=0; 12 13 for(int i=0;i<str1.length();i++) { 14 char c=str1.charAt(i); 15 if((c>='a'&&c<='z')||(c>='A'&&c<='Z')){ //判断英文字符 16 yingWen++; 17 System.out.println("英文字符:"+c); 18 }else if(c>='0'&&c<='9') { //判断数字 19 shuZi++; 20 System.out.println("数字:"+c); 21 }else if(c==' ') { //判断空格 22 kongGe++; 23 System.out.println("空格:"+c); 24 }else { 25 qiTa++; 26 System.out.println("其他字符:"+c); 27 } 28 } 29 System.out.println(); 30 System.out.println("英文字符总数:"+yingWen); 31 System.out.println("数字总数:"+shuZi); 32 System.out.println("空格总数:"+kongGe); 33 System.out.println("其他字符总数:"+qiTa); 34 } 35 }
二、遇到问题
String的方法较多,难以一下子全都记下来或者应用
三、明日学习
实验一的练习题