java学习笔记20-常用API
Object类概述
Object是类层次结构的跟,每个类都可以将Object作为超类。所有类都直接或间接的继承自该类
构造方法:public Object()
回想面向对象中,为什么说子类的构造方法默认访问的是父类的无参构造方法?
因为他们的顶级父类只有无参构造方法
冒泡排序
排序:将一组数据按照固定的规则进行排序
冒泡排序:一种排序的方式,对要进行排序的数据中相邻的数据进行两两比较,将较大的数据放在后面,依次对所有的数据进行操作,直至所有数据按要求完成排序
- 如果有n个数据进行排序,总共需要比较n-1次
- 每一次比较完毕,下一次的比较就会少一个数据参与
代码
1 |
|
Arrays类的概述和常用方法
Arrays类包含用于操作数组的各个方法
方法名 | 说明 |
---|---|
public static String toString(int[] a) | 返回指定数组的内容的字符串表示形式 |
public static void sort(int[] a) | 按照数字顺序排列指定的数组 |
代码
1 |
|
工具类的设计思想:
- 构造方法用 private 修饰
- 成员用 public static 修饰
基本类型包装类
概述
将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据
常用的操作之一:用于基本数据类型与字符串之间的转换
基本数据类型 | 包装类 |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
Integer类的概述和使用
Integer类的概述和使用
integer:包装一个对象中的原始类型int的值
方法名 | 说明 |
---|---|
public Integer(int value) | 根据int值创建Integer对象(过时) |
public Integer(String s) | 根据String值创建Integer对象(过时) |
public static Integer valueOf(int i) | 返回值表示指定的int值的Integer实例 |
Public static Integer valueOf(String s) | 返回一个保存指定值的Integer对象String |
int 和 String的相互转换
基本类型包装类的最常见操作就是:用于基本类型和字符串之间的相互转换
- int 转换为String
- public static String valueOf(int i):返回int参数的字符串表示形式。该方法是String类中的方法
- String转换为int
- public static int parselnt(String s):将字符串解析为int类型。该方法时Integer类中的方法
案例:字符串中数据排序
需求:有一个字符串:“91 27 46 38 50”,请写程序实现最终输出结果是:“27 38 46 50 91”
思路:
- 定义一个字符串
- 把字符串中的数字数据存储到一个int类型的数组中
- 得到字符串中每一个数字数据?
- public String[] split(String regex)
- 定义一个int数组,把String[]数组中的每一个元素存储到int数组中
- public static int parselnt(String s)
- 得到字符串中每一个数字数据?
- 对int数组进行排序
- 把排序后的int数组中的元素进行拼接得到一个字符串,这里拼接采用StringBuilder来实现
- 输出结果
代码
1 |
|
自动装箱和拆箱
- 装箱:把基本数据类型转换为对应的包装类类型
- 拆箱:把包装类类型转换为对应的基本数据类型
1 |
|
**注意:**在使用包装类类型的时候,如果做操作,最好先判断是否为null,推荐的是,只要是对象,在使用前就必须进行不为null的判断
日期类
Date类概述和构造方法
Date代表了一个特定的时间,精确到毫秒
方法名 | 说明 |
---|---|
public Date() | 分配一个Date对象,并初始化,以便它代表被分配的时间,精确到毫秒 |
public Date(long date) | 分配一个Date对象,并将其初始化为表示从标准基准时间起指定的毫秒数 |
Date类的常用方法
方法名 | 说明 |
---|---|
public long getTime() | 获取的是日期对象从1970年1月1日00:00:00到现在的毫秒值 |
public void setTime(long time) | 设置时间,给的是毫秒值 |
SimpleDateFormat类概述
SimpleDateFormat是一个具体的类,用于以区域设置敏感的方式格式化和解析日期。我们重点学习日期格式化和解析
日期和时间格式由日期和时间模式字符串指定,在日期和时间字符串中,从’A’到’Z’以及’a’到’z’引号的字母被解释为表示日期或时间字符串的组件的模式字母
常用的模式字母以及对应关系如下:
- y:年
- M:月
- d:日
- H:时
- m:分
- s:秒
SimpleDateFormat的构造方法
方法名 | 说明 |
---|---|
public SimpleDateFormat() | 构造一个SimpleDateFormat,使用默认模式和日期格式 |
public SimpleDateFormat(String pattern) | 构造一个SimpleDateFormat使用给定的模式和默认的日期格式 |
SimpleDateFormat格式化和解析日期
- 格式化(从Date到String)
- public final String format(Date date):将日期格式化成日期/时间字符串
- 解析(从String到Date)
- public Date parse(String source):从给定字符串的开始解析文本以生成日期
案例:日期工具类
需求:定义一个日期工具类(DateUtils),包含两个方法:把日期转换为指定格式的字符串;把字符串解析为指定格式的日期,然后定义一个测试类(DateDemo),测试日期工具类的方法
思路:
- 定义日期工具类(DateUtils)
- 定义一个方法dateToString,用于把日期转换为指定格式的字符串
- 返回值类型:String
- 参数:Date date,String format
- 定义一个方法stringToDate,用于字符串解析为指定格式的日期
- 返回值类型:Date
- 参数:String s,String format
- 定义测试类DateDemo,调用日期工具类中的方法
代码
1 |
|
1 |
|