/**
* String 不可变字符序列,每一次操作都会生成新的字符串在方法区
* 即:不会影响当前String的值
*/
String str = "好好学习,天天向上!";
System.out.println(str.length());//字符串长度
System.out.println(str.toUpperCase());//字符串转大写
System.out.println(str.toLowerCase());//字符串转小写
System.out.println(str.indexOf("天"));//返回第一个"天"的下标
System.out.println(str.lastIndexOf("天"));
System.out.println(str.startsWith("学习"));//是否存在以"学习"开头的子串
System.out.println(str.endsWith("天天"));//是否存在以"天天"结尾的子串
System.out.println(str.charAt(5));//返回下标为5的元素
System.out.println(str.substring(5));//截取字符串[5,str.length)
System.out.println(str.substring(5,7));//截取字符串[5,7)
System.out.println(str.trim());//两头去空
System.out.println(str.replace("天", "day"));//将"天"替换成"day"
String[] strArr = str.split(",");//以","为分隔符,分割字符串
for (String string : strArr) {
System.out.println(string);
}
System.out.println(str.isEmpty());//字符串为""时返回true
System.out.println("abc".equalsIgnoreCase("ABC"));//忽略大小写比较
/**
* StringBuffer可变长字符序列,缓存区,线程安全,速度相对会慢
* 因为可变长,所以每次操作会修改自身,节省内存
*/
StringBuffer buffer = new StringBuffer("*好好学习*");
buffer.append("*天天向上*");//末尾拼接
buffer.insert(0, "daydayup");//下标为0的位置插入
buffer.deleteCharAt(5);//删除下标为5的元素
buffer.delete(5, 7);//删除[5,7)
buffer.replace(0, 5, "JAVA");//将[0,5)替换成"JAVA"
System.out.println(buffer);
System.out.println(buffer.toString());//转成String类型
System.out.println(buffer.reverse());//逆序输出
/**
* StringBuilder 可变字符序列 线程不安全 速度快
* StringBuilder 是新版本中用来替换StringBuffer的,方法完全相同
*/
一个小练习
import java.util.Scanner;
/**
* 判断用户输入的email地址是否有效
* 判断标准: 1.必须有且只有一个 @ 和 .
* 2. @不能是第一个字符 .不能是最后一个字符
* 3.@ 和.符号之间至少有一个字符
*/
public class Demo01 {
public static void main(String[] args) {
System.out.println("请输入一个email地址:");
Scanner scan = new Scanner(System.in);
String str = scan.nextLine();
int index1 = str.indexOf("@");
int index2 = str.indexOf("@", index1+1);
int index3 = str.indexOf(".");
int index4 = str.indexOf(".", index3+1);
if(index1==-1||index3==-1||index2!=-1||index4!=-1) {
System.out.println("无效的email地址!");
return;
}
if (!(index1 != 0 && index3 != str.length() - 1)) {
System.out.println("无效的email地址!");
return;
}
if (index3-index1<=1) {
System.out.println("无效的email地址!");
return;
}
System.out.println("有效的email地址:"+str);
}
}