A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 森111 中级黑马   /  2018-11-14 16:38  /  461 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


Object类:

Object类是所有类的父类,所有类都可以使用Object类中的方法.

String toString()  此方法返回该对象的字符串表示.

System.out.println(new Student("小明"));    // 默认打印的是 Student类的对象的地址值

如果不想打印Student对象的地址值,可以对Student类中继承的Object类的 toString 方法进行重写

boolean equals(Object o);    // 表示其他某个对象是否与此对象"相等".

public boolean equals(Object o){    //参数 o可以为任何对象

return (this == o);  //  this 为调用 equals 方法的对象, o 为传进来参数对象;

}

==  表示引用数据类型之间进行地址值的比较 ; 基本类型之间的数值比较

如果不想比较对象的地址值,可以对This类中继承的Object类的 equals 方法进行重写

JDK1.7中添加了 Objects 工具类

调用 equals 方法时, (this.equals(o);)  如果 this = null; 输出会出现空指针异常

Objects 类的 equals 方法可以防止两个对象进行比较的时候出现空指针异常

public  static boolean equals(Object a, Object b){

return (a == b) || (a != null && a.equals(b));

}


System类:

System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中常用的方法有:

静态方法需要 类名.静态方法名 调用  例 : System.currentTimeMollis 返回值为long类型的毫秒值

public static long currentTimeMollis():返回一毫秒为单位的当前时间

public static void  arraycopy(Object src, int srcPos, Object dest, int destPos, int length):将数组中指定的数据拷贝到另一个数组中。红色 表示被拷贝的集合和起始拷贝位置(索引)  蓝色 表示被取代的集合和被取代的起始位置(索引)    黑色 表示拷贝和取代的长度(数量)   五个参数中间用逗号隔开.

StringBuiler类:

可以看做一个字符串缓冲区,可以提高字符串的操作效率(看做成一个长度可变的字符串)

底层也是一个byte数组 但是没有被final修饰过,长度可以变化

StringBuiler类 内的构造方法:

构造方法在创建对象时运行 ( 空参或者有参)

StringBuilder()构造一个不带任何字符的字符串生成器,其初始容量为 16 个字符

StringBuilder(String str) 构造一个字符串生成器,并初始为指定的字符串内容

StringBuiler类 内的成员方法:

成员方法需要创建对象后,用对象名调用

public StringBuilder append(任意类型参数): 添加任意类型数据的字符串形式,并返回当前对象自身

public String toString():将当前StringBuilder对象转换为String对象 例: String str = new StringBuilder(String a).toString ;

  

包装类概念:

基本数据类型,使用起来非常方便,但是没有对应的方法来操作这些基本类型的数据,可以用一个类,把基本类型的数据包装起来,在类中定义一些方法,这个类就叫包装类,类中的方法可以进行操作基本类型.

基本数据类型及对应的包装类:

基本类型                                对应的包装类(位于jaca.lang包中)

byte                                        Byte

short                                        Short

int                                        Interger

long                                        Long

float                                        Float

double                                Double

char                                        Character

boolean                                Boolean

包装类的方法: (以 Interger 为例示范内部方法及应用)

装箱:把基本类型的数据,包装到包装类中(基本类型的数据--->包装类)

构造方法:(创建对象时方法执行)

Interger(int value) 构造一个新分配的 Interger 对象,用来表示指定的 int 值               

例  System.out.println(new Interger(12)); // 输出结果为 12

Interger(String s) 构造一个新分配的 Interger 对象,用来表示 String 参数所指示的 int 值

(参数内传递的字符串必须全部为基本类型 如: "1" , "100"  正确  ;   "a"  ,  "12c"  会出现异常  )               

例  System.out.println(new Interger("12")); // 输出结果为 12                       

例  System.out.println(new Interger("12a")); // 输出报错

静态方法:(用  类名.方法名   进行调用)

static Interger valueof(int i)  返回一个表示指定的 int 值的 Inrterger 实例.               

例  System.out.println(Interger.valueof(11)); // 输出结果为 11

static Interger valueof(String s) 返回保存指定的 String 的值的 Interger 实例.

例  System.out.println(Interger.valueof("23")); // 输出结果为 23

拆箱: 在包装类中取出基本类型的数据(包装类-->基本类型的数据)

成员方法:

int intValue() 以 int 类型返回该 Interger 的值.               

例  System.out.println(new Interger(56).intValue); // 输出结果为 56

JDK1.5 之后  基本数据类型可以自动进行 装箱和拆箱

基本类型和字符串之间的相互转换

基本类型-->字符串(String):

·基本类型 + " " (字符串)                简单快捷

·包装类的静态方法 toString(参数)   不是 Object 类的 toString() 方法       

static String toString(int i)   返回一个表示指定整数的 String 对象  (类似于  "i")

·String类的静态方法 valueof(参数)

static String valueof(int i)   返回 int 参数的字符串表示形式

字符串(String)-->基本类型:

·使用包装类的静态方法parseXXX("字符串");

Interger类: static int parseInt(String str)    //str 的内容必须是int类型数值

Double类: static double parseDouble(String str)  //str 的内容必须为double类型的数值






0 个回复

您需要登录后才可以回帖 登录 | 加入黑马