首页 > 代码库 > lang包(下)
lang包(下)
1、字符串长度;
2、字符串比较;3、字符串搜索;
4、提取字符串;5、更改字符串大小写;
6、数据格式转化。
StringBuffer类用于表示可以修改的字符串;
使用+运算符的字符串将自动创建字符串缓冲对象;
以下是StringBuffer类的构造方法有4种重载方式,以下是常用的几个:
StringBuffer()--创建一个空的StringBuffer对象,默认保留16个字符的缓冲空间
StringBuffer(String str)--根据字符串str的内容创建StringBuffer对象,并默认保留 16 个字符的缓冲空间
StringBuffer(int capacity)--创建一个空的StringBuffer对象,缓冲空间大小由capacity指定
StringBuffer类的常用方法
StringBuffer insert(int index, x x)--将x插入到索引为index的位置,x可以为任何类型的数据
void setCharAt(int index, char ch)--使用 ch 指定的新值替换 index指定的位置上的字符
StringBuffer reverse()--将当前StringBuffer对象中的字符序列倒置
StringBuffer delete(int start, int end)--删除当前对象中从start位置开始直到 end 指定的索引 位置的字符序列
StringBuffer deleteCharAt(int index)--将删除 index 指定的索引处的字符
StringBuffer replace(int start, int end, String str)--此方法使用一组字符替换另一组字符。将用替换字符串从 start指定的位置开始替换,直到 end 指定的位置结束
int length()--获得当前StringBuffer对象的长度
在Java中一旦创建了字符串就不能直接更改,这就是字符串的不变性;而StringBuffer类正是针对此问题而提供的字符可变序列;
StringBuffer与String是同等的类,唯一区别是可以进行更改。
Math类中提供了一系列基本数学运算和几何运算的方法;该类的构造方法被修饰为private,因此不能实例化;
该类中的所有方法都是静态的,可以通过类名直接调用;
该类被修饰为final,因此没有子类
Math类中还包括两个常用的常量:
PI:圆周率π
E:自然常量
以上常量在Math类中都被声明成静态,可以直接通过类名进行访问。
Object类就是这个单根体系的根,也就是说它是其它所有类的共同父类;
如果用户定义的类没有扩展任何其它类,则默认扩展自Object类;
Object类中定义的一些方法,会被继承到所有类中。
Class类
Java应用程序实际上都是由一个个对象组成,这些对象分别属于什么类,是从哪个类继承而来,这一系列的信息都是由Class类的实例来记录的;
Class类的实例用于记录对象的类描述信息;
如果在程序运行时,需要检索某个对象的相关类信息,可以调用该对象的getClass方法来获得记录其描述信息的Class类实例;
Class类没有公共的构造方法,无法通过new运算符实例化,只能通过对象的getClass方法,或是通过Class的静态方法forName来获得实例。
需要注意的问题:
public class Student {
private String name;
private int age;
public Student(String name,int age){
this.name = name;
this.age = age;
}
}
public class Test1 {
public static void main(String[] args) {
Student s = new Student("张三",12);
System.out.println(s);
}
}
打印结果:com.test.Student@4d687dcd
即s对象默认调用的是Object类中的toString()方法,打印的是字符串类型
若改为:
public class Student {
private String name;
private int age;
public Student(String name,int age){
this.name = name;
this.age = age;
}
public String toString(){
String s = "姓名:"+name+"年龄:"+age+"岁";
return s;
}
}
public class Test1 {
public static void main(String[] args) {
Student s = new Student("张三",12);
System.out.println(s);
}
}
打印结果:姓名:张三 年龄:12岁
此时,在自定义的类中重写了Object类中的toString()方法,即覆盖了该方法。
lang包(下)