黑马程序员技术交流社区
标题: 2018.12.12周记 [打印本页]
作者: Damon3270 时间: 2018-12-13 13:11
标题: 2018.12.12周记
Object类
Object类,在java.lang包下是所有类的直接和间接的父类
其中包括了我们常用的toString方法和equals方法
覆盖重写Object类中的两个方法
PublicString toString(Object obj); 返回该类型的字符串
PublicString equals(Object obj); 指示其他某个对象是否与此对象“相等”。
Date:时间类
java.util.Date:表示时间的类
Date表示特定的时间,精确到毫秒
毫秒:精确到千分之一秒1000毫秒 =1秒
毫秒值的作用:可以对时间和日期进行计算
把日期转换为毫秒:
当前的日期:2088-01-01
时间原点(0毫秒):1970 年 1 月 1 日 00:00:00(英国格林威治)
就是计算当前日期到时间原点之间一共经历了多少毫秒 (3742767540068L)
注意:
中国属于东八区,会把时间增加8个小时
1970 年 1 月 1 日 08:00:00
把毫秒转换为日期:
1 天 = 24 × 60 × 60 = 86400 秒 = 86400 x 1000 = 86400000毫秒 Date构造方法 publicDate(){}
创建对象Date d =new Date();
System.out.println(d);//已固定格式返回当前系统的日期和时间
publicDate(long date){}
创建都行 Date d =new Date (3742767540068L);//指定毫秒值
System.out.println(d);//打印指定毫秒值所对应的时间日期
Date 成员方法
publiclong getTime(); 获取当前时间的毫秒值
DateFormat类
Java.textDateFormat是对日期/时间按照指定格式,格式化。(抽象类,无法直接创建对象)
解析:按照指定的格式,从Date对象转换成String对象
其中的成员方法
Stringformat(Date date) 按照指定的模式,把Date日期,格式化为符合模式的字符串
Dateparse(String source) 把符合模式的字符串,解析为Date日期
SimpledateFormat类
java.text.SimpleDateFormat包下父类是DateFormat
构造方法
publicSimpleDateFormat(String pattern)
用给定的模式和默认的语言环境日期格式符号构造 SimpleDateFormat
参数:String pattern 传递指定的模式
常用的格式规则
标识字母(区分大小写) 含义
y 年
M 月
d 日
H 时
m 分
s 秒
写对应的模式,会把模式替换对应的日期和时间
“yyyy-MM-ddHH:mm:ss”
注意:
模式中的字母不能改变,链接模式的符号可以改变
“yyyy年MM月dd日 HH时mm分ss秒”
使用:
String format(Date date);方法按照指定的模式,把Date日期,格式化为符合模式的字符串
//1,创建SimpleDateFormat类的对象
SimpleDateFormatsdf = new SimpleDateFormat(“yyyy年MM月dd日 HH时mm分ss秒”);
//2.调用SimpleDateFormat对象中的方法format,按照构造方法中指定的模式,把Date日期格式化为符合模式的字符串(文本)//String format(Date date) 按照指定的模式,把Date日期,格式化为符合模式的字符串
Date date = new Date();
String d = sdf.format(date);
System.out.println(date);//Sun Aug 08 15:51:54 CST 2088
System.out.println(d);//2088年08月08日 15时51分54秒 Date parse(Stringsource);解析,把指定的时间字符串解析成Date时间格式
SimpleDateFormat sdf =new SimpleDateFromat(“yyyy年MM月dd日 HH时mm分ss秒”);
//把字符串转换成Date时间格式,(必须和上面SimpleDateFormat中完全对应)
//使用parse解析方法需要在方法上声明异常thowsParseException
Date d =sdf.parse(“2088年08月08日15时51分54秒”);
System.out.println(d);// 打印结果是Sun Aug 08 15:51:54 CST 2088
Calendar类 (抽象类)
java.util.Calendar类是一个日历类
Calendar类是一个抽象类,里边提供了很多操作日历字段的方法(YEAR、MONTH、DAY_OF_MONTH、HOUR )
Calendar类无法直接创建对象使用,里边有一个静态方法叫getInstance(),该方法返回了Calendar类的子类对象
static Calendar getInstance() 使用默认时区和语言环境获得一个日历。 Calendar类的常用成员方法:
public int get(int field):返回给定日历字段的值。
参数intfield:传递Calendar中对应的日历字段
如:get(Calendar.YEAR)
public void set(int field, intvalue):将给定的日历字段设置为给定值。
参数:intvalue:是要更改的日历值
public abstract void add(intfield, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量。
参数:intamount:增加和减少的值(正数是增加负数是减少
public Date getTime():返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象。
成员方法的参数:
int field:日历类的字段,可以使用Calendar类的静态成员变量获取
public static final int YEAR= 1; 年
public static final int MONTH= 2; 月
public static final int DATE= 5; 月中的某一天
public static final int DAY_OF_MONTH = 5;月中的某一天
public static final int HOUR= 10; 时
public static final intMINUTE = 12; 分
public static final intSECOND = 13; 秒
System类
java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有
public static long currentTimeMillis():返回以毫秒为单位的当前时间。
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length):将数组中指定的数据拷贝到另一个数组中。
参数:
src - 源数组。
srcPos - 源数组中的起始位置(起始索引)。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。 StringBuider类
java.lang.StringBuider类:字符串缓冲区
构造方法:
StringBuilder()构造一个不带任何字符的字符串生成器,其初始容量为 16 个字符。
StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容。 StringBuilder的常用方法:
public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前对象自身。
StringBuidersb = new StringBuider();
//链式编程,方法返回的是一个对象可以继续调用这个方法。
sb.append(1).append(true).append(‘a’);
public StringtoString()方法 把StringBuilder转换成字符串
StringBuilder和String可以相互转换:
String->StringBuilder:可以使用StringBuilder的构造方法
StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容。
StringBuilder->String:可以使用StringBuilder中的toString方法
publicString toString():将当前StringBuilder对象转换为String对象。
包装类
通过类把基本数据类型包装起来进行使用
装箱:把基本类型的数据,包装到包装类中(基本类型的数据->包装类)
构造方法:
Integer(int value) 构造一个新分配的 Integer 对象,它表示指定的 int 值。
Integer(String s) 构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。
传递的字符串,必须是基本类型的字符串,否则会抛出异常 "100" 正确 "a" 抛异常
静态方法:
static Integer valueOf(int i) 返回一个表示指定的 int 值的 Integer 实例。
static Integer valueOf(String s) 返回保存指定的 String 的值的 Integer 对象。
拆箱:在包装类中取出基本类型的数据(包装类->基本类型的数据)
成员方法:
int intValue() 以 int 类型返回该 Integer 的值。
自动装箱与自动拆箱:基本类型的数据和包装类之间可以自动的相互转换
JDK1.5之后出现的新特性
基本类型与字符串类型之间的相互转换
基本类型->字符串(String)
1.基本类型的值+"" 最简单的方法(工作中常用)
2.包装类的静态方法toString(参数),不是Object类的toString() 重载
static String toString(int i) 返回一个表示指定整数的 String 对象。
Strings = Intger.toString(200);
3.String类的静态方法valueOf(参数)
static String valueOf(int i) 返回 int 参数的字符串表示形式。
Strings1 = String.valueOf(300);
字符串(String)->基本类型
使用包装类的静态方法parseXXX("字符串");
Integer类: static int parseInt(Strings)
Double类: static doubleparseDouble(String s)
异常:
java.lang.Throwable:类是 Java 语言中所有错误或异常的超类。
Exception:编译期异常,进行编译(写代码)java程序出现的问题
RuntimeException:运行期异常,java程序运行过程中出现的问题
异常就相当于程序得了一个小毛病(感冒,发烧),把异常处理掉,程序可以继续执行(吃点药,继续革命工作)
Error:错误
错误就相当于程序得了一个无法治愈的毛病(非典,艾滋).必须修改源代码,程序才能继续执行
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |