------- android培训、java培训、期待与您交流! ----------
Object类的方法
(1)是类层次结构的顶层类,是所有类的根类,超类。所有的类都直接或者间接的继承自Object类。
(2)Object类的方法:
A:toString()
public String toString():返回对象的字符串表示形式。
组成:包名...类名@哈希值的十六进制
B:equals()
public boolean equals(Object obj):
默认比较的是对象的地址值是否相同。
一般,会重写该方法。按照自己ide需求进行比较。
(3)面试题:
==和equals()的区别?
==:
比较基本类型:比较的是基本类型的值是否相同。
比较引用类型:比较的是引用类型的地址值是否相同。
equals():
比较引用类型,默认比较的是引用类型的地址值是否相同。
如果类重写了该方法,那就得按照重写后的规则进行比较。
String类
(1)字符串:多个字符组成的一串数据。
(2)构造方法:
A:String s = new String();
B:String s = new String(byte[] bys);
C:String s = new String(byte[] bys,int index,int length);
D:String s = new String(char[] chs);
E:String s = new String(char[] chs,int index,int length);
F:String s = new String(String str);
G:String s = "hello";
(3)字符串的特点及面试题
A:字符串一旦被赋值,就不能改变。
注意:字符串的值不能改变,没有说引用变量不能改变。
B:面试题:
a:String s = new String("hello")和String s = "hello"的区别。
b:请写出结果:
String s1 = new String("hello");
String s2 = new String("hello");
System.out.println(s1==s2);
System.out.println(s1.equals(s2));
String s3 = new String("hello");
String s4 = "hello";
System.out.println(s3==s4);
System.out.println(s3.equals(s4));
String s5 = "hello";
String s6 = "hello";
System.out.println(s5==s6);
System.out.println(s5.equals(s6));
(4)成员方法
A:判断功能
boolean equals(Object obj) //判断字符串的内容是否相同,区分大小写。
boolean equalsIgnoreCase(String str)//判断字符串的内容是否相同,不区分大小写。
boolean contains(String str)//判断字符串对象是否包含给定的字符串。
boolean startsWith(String str)//判断字符串对象是否以给定的字符串开始。
boolean endsWith(String str)//判断字符串对象是否以给定的字符串结束。
boolean isEmpty()//判断字符串对象是否为空。数据是否为空。
B:获取功能
int length()//获取字符串的长度
char charAt(int index)//返回字符串中给定索引处的字符
int indexOf(int ch)//返回指定字符在此字符串中第一次出现的索引
int indexOf(String str)//返回指定字符串在此字符串中第一次出现的索引
int indexOf(int ch,int fromIndex)//返回在此字符串中第一次出现指定字符的索引,从指定的索引开始搜索。
int indexOf(String str,int fromIndex)//返回在此字符串中第一次出现指定字符串的索引,从指定的索引开始搜索。
String substring(int start)//截取字符串。返回从指定位置开始截取后的字符串。
String substring(int start,int end)//截取字符串。返回从指定位置开始到指定位置结束截取后的字符串。
C:转换功能
byte[] getBytes()//把字符串转换成字节数组。
char[] toCharArray()//把字符串转换成字符数组。
static String copyValueOf(char[] chs)//把字符数组转换成字符串。
static String valueOf(char[] chs)//把字符数组转换成字符串。
static String valueOf(int i)//基本类型:把int(基本类型)转换成字符串。
String toLowerCase()//把字符串变成小写
String toUpperCase()//把字符串变成大写
String concat(String str)//拼接字符串。
D:其他功能
a:替换功能
String replace(char oldChar,char newChar)//用新的字符去替换指定的旧字符
String replace(String oldString,String newString)//用新的字符串去替换指定的旧字符串
b:切割功能
String[] split(String regex)//用给定的字符串进行切割
c:去除两端空格功能
String trim()
d:字典顺序比较功能
int compareTo(String str)
int compareToIgnoreCase(String str)
2:Arrays工具类的使用
(1)Arrays是针对数组操作的工具类。
(2)成员方法:
public static String toString(数组):把数组变成字符串。
public static void sort(数组):对数组进行排序。
public static int binarySearch(int[] arr,int value):二分查找
3:System的方法
(1)系统类,提供了静态的变量和方法供我们使用。
(2)成员方法:
public static void exit(int value):退出jvm,非0表示异常退出。
public static long currentTimeMillis():返回当前系统时间的毫秒值。
和1970 年 1 月 1 日午夜之间的时间差
4:StringBuffer
(1)字符个数可以发生改变的字符串类。字符串缓冲区类。
(2)构造方法:
A:StringBuffer()
B:StringBuffer(int capacity)
C:StringBuffer(String str)
(3)成员方法:
A:添加功能
public StringBuffer append(int i):在末尾追加元素
public StringBuffer insert(int index,int i):在指定位置添加元素
B:删除功能
StringBuffer deleteCharAt(int index):删除指定位置字符
StringBuffer delete(int start, int end):删除指定开始位置和结束位置间的字符
C:替换功能
StringBuffer replace(int start, int end, String str)
D:截取功能
String substring(int start):从指定位置到末尾截取
String substring(int start, int end): 从指定位置到结束位置截取
E:反转功能
StringBuffer reverse():字符串反转
(4)案例:
字符串反转。
基本类型包装类
(1)基本类型的数据我们只能使用值,不能做更多的操作。为了方便我们操作,
java就把每种基本类型进行了包装。提供方法供我们使用。
(2)基本类型和包装类的对应关系
byte
short
intInteger
long
float
double
charCharacter
boolean
(3)Integer构造方法
A:Integer i = new Integer(int num);
B:Integer i = new Integer(String s);
注意:s必须是一个由数字字符组成的字符串。
(4)String和int类型的转换
A:String -- int
Integer:
public static int parseInt(String s)
B:int -- String
Integer:
public static String toString(int i)
String:
public static String valueOf(int i)
(5)JDK5以后的新特性
A:自动装箱基本类型--引用类型
B:自动拆箱引用类型--基本类型
举例:
Integer i = 100;
i += 200;