String类简介
String类是Java API提供的一个最为常用的基本字符串处理类,该类提供了非常丰富的字符串处理方法。Java把String类声明为final类,不能有子类。
String类对象的创建
先进行字符串声明,再进行字符串赋值:
String str1;//字符串声明
String str2;
str1 = new String("This is a java string.");//动态赋值
str2 = "This is a java string.";//静态赋值
String类构造方法:
Java提供了以下构造方法,完成对象的创建。
String str1 = new String();//空字符串创建对象
String str2 = new String("This is a java string.");//字符串创建对象
String str3 = new String(str2);//用已知字符串创建对象
char[] value = {"a","b","c","d"};
String str4 = new String(value);//用字符数组创建对象
String str5 = new String(value, 1, 2);
byte[] strb = new byte[]{65, 66};
String str6 = new String(strb);//用byte数组创建对象
字符串的静态赋值
字符串对象赋值为字符串常量,称为静态赋值。
String str1 = "Work hard";//字符串常量
String str2 = str1 + " and you will get backward.";//字符串合并
String str3 = "Get your number of " + 1;//数字也可加到字符串中
String类常用方法
String类常用方法介绍如下:
1、求字符串长度
String wrk1 = "This is a java code.";
int num = wrk1.length();//求字符串长度
2、查看字符串的开始与结尾是否与某个字符串相同
String wrk2 = "Have a good job.";
boolean begin = wrk2.startsWith("Have");
boolean ends = wrk2.endsWith("job.");
3、字符串的比较
String str3 = new String("WELL");
String str4 = new String("well");
int a = str3.compareTo(str4);
int b = str3.compareToIgnoreCase(str4);//忽略大小写
boolean c = str3.equals(str4);
boolean d = str3.equalsIgnoreCase(str4);//忽略大小写
4、字符串的查找
String str = "I am a good student.";
System.out.println(str.indexOf('a'));//字符首次出现的索引位置
System.out.println(str.indexOf("good"));//字符串首次出现的索引位置
System.out.println(str.indexOf("a", 2));//从指定位置开始查找
System.out.println(str.lastIndexOf("a"));//字符最后一次出现的位置
System.out.println(str.lastIndexOf("a", 3));//从指定位置向前查找
System.out.println("====================");
String tom = "I am a good cat.";
System.out.println(tom.indexOf(97));//返回ASCII码代表字符首次出现的位置
System.out.println(tom.indexOf(97, 3));//从指定位置开始查找
System.out.println(tom.lastIndexOf(97));//返回ASCII码代表字符最后出现的位置
System.out.println(tom.lastIndexOf(97, 3));//从指定位置向前查找
输出结果如下:
2
7
2
5
2
====================
2
5
13
2
5、字符串的大小写转换
String str0 = "ABcdEf";
System.out.println(str0.toLowerCase());//全部转换为小写
System.out.println(str0.toUpperCase());//全部转换为大写
输出结果如下:
abcdef
ABCDEF
6、字符替换
String str00 = new String("I mist theep");
System.out.println(str00.replace('t', 's'));
System.out.println(str00.replaceFirst("e", "aa"));
System.out.println(str00.replaceAll("e", "dd"));
输出结果如下:
I miss sheep
I mist thaaep
I mist thddddp
7、提取子串:substring方法
String str01 = new String("try your best");
System.out.println(str01.substring(2));
System.out.println(str01.substring(2, 5));
输出结果如下:
y your best
y y
8、去掉两端空格(中间不处理)
String str02 = " ad fnew ";
String str03 = str02.trim();
System.out.println(str03);
System.out.println(str02.length());
System.out.println(str03.length());
输出结果如下:
ad fnew
10
7
字符串和基本类型的转换
1.字符串转换为基本类型
java.lang包中有Byte、Short、Integer、Float、Double等包装类的方法:
int n = Integer.parseInt("12");
float f = Float.parseFloat("12.34");
double d = Double.parseDouble("1.234");
byte b = Byte.parseByte("36");
System.out.println(n);
System.out.println(f);
System.out.println(d);
System.out.println(b);
2.基本类型转换为字符串类型
String类中提供了String valueOf()方法,用作基本类型转换为字符串类型。
public class StringDemo
{
public static void main(String[] args){
String str1 = String.valueOf(true);
String str2 = String.valueOf('a');
String str3 = String.valueOf(100);
String str4 = String.valueOf(67.8);
System.out.println(str1);
System.out.println(str2);
System.out.println(str3);
System.out.println(str4);
}
}
输出结果如下:
true
a
100
67.8
参考书籍:《Java程序设计(慕课版)》