您的位置:首页 > 编程语言 > Java开发

Java语言API,Object类、StringBuilder、Date时间获取、System类常用

2018-09-14 17:40 746 查看
Object类
Java.lang.Object(类):是Java中任何“引用类型”的父类。包括自定义的类、类库中的类、数组

都继承了toString()和equals()方法

1.toString方法:
打印引用类型时,会自动调用toString方法,但是父类Object中的toString方法打印的是地址值,需要在自类中重写toString方法,以输出所有属性的值



2.equals方法:
equals方法是比较两个对象的所有属性是否相同,

如果没有覆盖重写equals方法,那么Object类中默认进行 == 运算符的对象地址比较,只要不是同一个对象,结果必然为false。

如果希望进行对象的内容比较,即所有或指定的部分成员变量相同就判定两个对象相同,则可以覆盖重写equals方法。重写的方式和重写toString方法一致



Objects类:
包名,java.util.Objects(类),类内部定义了大量的对"对象"操作的一些"静态方法"。

1.equals(Object o1,Object o2)方法:
比较两个对象是否完全相同,但是是基于对象中重写的equals方法进行判断,如果没有重写,和toString方法一样是比较地址是否相同,但是会判断对象是否为空,不会抛出空指针异常,

虽然是基于对象中重写的equals方法,Objects 的equals方法更安全,不会发生空指针异常报错





Date类
包名:java.util.Date,表示一个特定的时间,精确到毫秒

两个构造方法

1、无参构造方法,使用当前系统时间创建一个Date对象
2、有参构造方法:Date(long m)使用一个毫秒值构造一个Date对象
成员方法:
1、public long getTime():获取此Date对象代表的毫秒值;
如果是以当前时间创建的对象,那么这个毫秒值就是从1970年01月01日零时,到现在的总毫秒值,设置了毫秒值则是设置的值
2、’public void setTime(long m):设置此Date对象的毫秒值;此Date对象所表示的日期会被更改;

DateFormat类
包名:java.text.DateFormat(抽象类):可以对Date进行“格式化显示”的一个工具类。抽象类不能创建对象,是使用子类SimpleDateFormat类创建对象

首先都需要创建一个子类的对象,构造方法SimpleDateFormat(String pattern)参数里是日期的格式

1.将Date转换为String

public static void main(String[] args) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");//这里的格式就是转换后打印显示的格式
    String str = sdf.format(new Date());//format方法
    System.out.println(str);
}

2.将String转换为Date

public static void main(String[] args) throws ParseException {
    String str = "2018-09-04";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//此格式必须跟字符串中的日期格式“匹配”否则抛异常。
    Date date = sdf.parse(str);
    System.out.println(date);
}

Calendar类
包名:java.util.Calendar(抽象类),也是一个抽象类,不能创建对象,子类:GregorianCalendar(子类)可以使用一个简单的方式获取这个子类对象:

Calendar c = Calendar.getInstance();

1.常用方法:
1).public int get(int field):获取某个字段的值;



2).public void set(int field,int value):设置某个字段的值;



3).public void add(int field,int value):为某个字段增加指定的值;



System类
包名:java.lang.System(类),包含一些静态方法

常用方法:

1.复制数组
public static void arraycopy(Object src, int srcPos,Object dest,int destPos,int length)

//想要复制的数组,起始位置,复制存储的数组,复制长度

此方法是把一个数组的指定内容复制到另一个数组中(是两个数组)

2.获取当前时间
public static long currentTimeMillis():获取当前系统时间的毫秒值;

相当于:Date date = new Date();

long m = date.getTime();

3.结束虚拟机

public static void exit(int status):结束JVM。也就是结束程序。status值为0即可

StringBuilder类
包名:java.lang.StringBuilder(类),做字符串连接

构造方法:
StringBuilder()无参构造方法,自动为对象申请一个16个空位的数组,当添加的字符串存储不下,自动拓展为32位数组,并且16的数组销毁,如果再不够以此方式增加

常用方法:
a) public StringBuilder append(各种类型):把参数连接在数组后,(小数点也算一个字符 )

返回的是一个StringBuilder类型的值,可以直接再调用



b) public StringBuilder reverse():自动反转数组中的字符串





包装类
将基本类型“包装成”引用类型

1.基本类型分为四类八种:
byte short char int long float double boolean

对应引用类型:

Byte Short Character Integer Long Float Double Boolean

2.将某种类型转换成字符串:
格式:

int a = 24;

String s = Integer.toString(a);

将字符串转换成某种类型:
格式:

String a = "24";

int age = Integer.parseInt(a);

转换时,需要转换成int类型,那么字符串中不能有其他类型的值

所有包装类都可以转换,但是Character不可以

3.装箱和拆箱:
装箱:将"基本类型"赋值给"包装类型";

拆箱:将"包装类型"赋值给"基本类型":

Java中把包装类型和基本类型同等看待,比如int 类型的值可以直接赋值给Integer 包装类型:

Integer a = 10; //装箱

int b = a;//拆箱 (a可以++,a++也能计算)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  object