String类的知识点小结

 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)按字典顺序比较两个字符串

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值