java.lang.String类的学习
1概念
在java编程中广泛使用的字符串是一系列字符,在java编程语言中,字符串被视为对象。java平台提供String类来创建和操作字符串。
字符串定义和创建的几种方式:
- String s1 = "abc";直接将一个字符串常量赋值给String类型的变量
- String s2 = new String("abc");使用new关键词创建对象
- char[] s = ['a','b','c','d'];
String s3 = new String(s);使用字符数组创建一个字符串
String s4 = new String(s,1,3)从索引1开始,提取3个字符创建字符串
注意点
- String str = null;和String str = "";是不同的。前者是空对象,没有任何指向地址,会有NPE,后者是空白的字符串,是分配了内存空间的。 image.png
- 字符串变量是一个对象
- 字符串String是final类
- ==和equals的区别
==是地址相同,equals是内容相同 - stack和heap的概念
2 常用方法
- String s3 = s1.concat(s2);//连接字符串
- int size = s.length();//求字符串长度
- char ch = s.charAt(2);//找出索引位置为2的字符
- int index = s.indexOf("a");//搜索字符在字符串中首次出现的索引位置
- int lastIndex = s.indexOf(".");///搜索字符在字符串中最后出现的索引位
- boolean flag = s.startWith("Java");//判断字符串是否以指定内容开始
- boolean flag = s.endsWith(".jpg");//判断字符串是否以指定内容结束
- char[] chars = s.toCharArray();//可以将字符串转化为一个字符数组
- boolean flag = s.contains("abc");//判断字符串中是否包含指定内容
- int c = s1.compareTo(s2);
- String subStr = s.substring(3,6);//子字符串,从原字符串索引位置3开始,长度为6
- String newStr = s.replace("java","Java");//将指定的字符“java”替换成新的字符"Java"
- String[] stringArray = s.split(",");//根据给的分隔符(,)对字符串进行拆分
- String newStr = s.toLowerCase();//将所有字符转换为小写
- String newStr = s.toUpperCase();//将所有字符转换为大写
- String newStr = s.trim();//将字符串首尾处空白内容删除
- boolean flag = s.equals(str);//比较两个字符串内容是否相同
- boolean flag = s.matches("");
3 使用场景
- 文件名更名 image.png
- 在一串字符串中分割单词 image.png
- 禁词过滤 image.png
- 文件类型统计 image.png
- 正则表达式验证字符串 image.png image.png
网友评论