1.Object中的一个方法:
public String toString(); 回该对象的字符串表示
Integer:是int类型的包装类类型
它里面提供了一个方法
public static String toHexString(int i):以十六进制表示对字符串形式
直接输出对象名称:实际执行了Object中的toString(),输出的全类名@十六进制数据
我现在输出对象名称,不想让toString()直接输出的是一个地址值(对象的地址值)
就需要重写Object中的toSring(),一般情况:自动生成即可
建议所有子类都重写此方法。
2.equals与==的比较说明
public boolean equals(Object obj)指示其他某个对象是否与此对象“相等”。
==:比较的值相等(地址值)
equals:本身属于Object类中的方法,默认比较的是地址值是否相同
按照正常情况:equals方法底层实际执行的两个对象在==,比较是地址值;假如:学生的年龄和姓名一致,看成同一个人
在自定义的类中,重写Object中的equals()方法,比较是两个对象的成员变量的值是否相同.自动生成即可!
3.Object中的克隆一个对象
protected Object clone()创建并返回此对象的一个副本
Object 类的 clone 方法执行特定的复制操作。首先,如果此对象的类不能实现接口 Cloneable,则会抛出 CloneNotSupportedException。
注意,所有的数组都被视为实现接口 Cloneable
4.Scanner类的一些常见的方法
XXX 变量名 = 键盘录入对象.nextXXX();
在Scanner类中它提供一个判断功能:
public boolean hasNextXXX():当前扫描器判断是否有下一个可以录入的XXX类型数据
nextXXX();
java.util.InputMismatchException:录入的数据和接收的数据类型不匹配异常
问题:
键盘录入两个int类型的数据,分别输出,没有问题
键盘录入两个String类型的数据,分别输出:没有问题
先录入一个String类型的数据,在录入int类型的数据,没有问题
先录入一个int类型的数据,在录入String类型的数据,有问题,第二个数据是字符串类型,又由于录入下一个数据要"空格"本身是一个字符串
b是空格,b的值没有录入!
如何解决:重写创建键盘录入对象
5.猜字小游戏
Math是一个静态修饰的方法可以直接在静态方法中调用
public static double random()返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。
random()的取值范围:[0.0,1.0);
获取1-100之间的随机数(int类型)
6.String中的方法及注意事项
String:表示字符串:
字符串是常量;它们的值在创建之后不能更改。
String是一种特殊的引用类型:
默认值:null
构造方法:
String():无参构造
String(byte[] bytes) :将字节数转换成字符串
public String(byte[] bytes, int index,int length):将字节数组的一部分转换成字符串
public String(char[] value):将字符数组转化成字符串 toCharArray():将字符串转换成字符
public String(char[] value, int index, int count):将字符数组的一部分转换成字符串
public String(String original):将一个字符串常量构造成一个字符串对象
常用的方法:
public int length()返回此字符串的长度
面试题:
数组中有没有length(),字符串中有没有length(),集合中有没有length()?
数组中没有length()方法,只有length属性
字符串中有length()
集合中没有length(),获取集合的元素数:size()
String字符串的最大的特点:
字符串一旦被赋值,其值不能被改变
7.String类的常用的判断功能
boolean equals(Object obj):将此字符串与指定的对象比较
boolean equalsIgnoreCase(String str)将此 String 与另一个 String 比较,不考虑大小写
boolean contains(String str):判断当前大川中是否包含子字符串 (重点)
boolean startsWith(String str):以当前str字符串开头(重点)
boolean endsWith(String str):以当前str字符串结尾(重点)
boolean isEmpty():判断字符串是否为空
public String concat(String str):字符串的特有功能:拼接功能和+拼接符是一个意思
8.String类的常用获取功能:
public int length():获取字符串的长度
public char charAt(int index)返回指定索引处的 字符
public int indexOf(int ch)返回指定字符在此字符串中第一次出现处的索引
问题:既然传入的字符:这里为什么用int类型
'a'和97 都表示a
public int indexOf(int ch,int fromIndex)返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
public int indexOf(String str)返回指定子字符串在此字符串中第一次出现处的索引
public int indexOf(String str,int fromIndex)回在此字符串中第一次出现指定字符串处的索引,从指定的索引开始搜索。
9. 截取功能
public String substring(int beginIndex):从指定位置开始截取,默认截取到末尾,返回新的字符串
public String substring(int beginIndex, int endIndex):从指定位置开始到指定位置末尾结束,包前不包含
10.String的常用转换功能:
public byte[] getBytes() :将字符串转换为字节数组
public char[] toCharArray() :将字符串转换成字符数组(重点)
public static String valueOf(int i):将int类型的数据转换成字符串(重点)
这个方法可以将任何类型的数据转化成String类型
public String toLowerCase():转成小写
public String toUpperCase():字符串中所有的字符变成大写 * public byte[] getBytes() :将字符串转换为字节数组
public char[] toCharArray() :将字符串转换成字符数组(重点)
public static String valueOf(int i):将int类型的数据转换成字符串(重点)
这个方法可以将任何类型的数据转化成String类型
public String toLowerCase():转成小写
public String toUpperCase():字符串中所有的字符变成大写 * public byte[] getBytes() :将字符串转换为字节数组
public char[] toCharArray() :将字符串转换成字符数组(重点)
public static String valueOf(int i):将int类型的数据转换成字符串(重点)
这个方法可以将任何类型的数据转化成String类型
public String toLowerCase():转成小写
public String toUpperCase():字符串中所有的字符变成大写
11.String类型的其他功能:
public String replace(char oldChar,char newChar):将大字符串中的某个字符替换掉成新的字符
public String replace(String oldStr,String newStr):将大串中的某个子字符串替换掉
public String trim():去除字符串两端空格
public int compareTo(String anotherString)按字典顺序比较两个字符串