Math类
一、Math类的概述:
1.Math包含执行基本数字运算的方法
2.看类的成员是否是静态的,如果是,通过类名可以直接调用
二、Math类的常用方法:
①public static int abs(int a):返回参数的绝对值
System.out.println(Math.abs(88));
System.out.println(Math.abs(-88));
②public static double ceil(double a):返回大于或等于参数的最小double值,等于一个整数
System.out.println(Math.ceil(23.5));
System.out.println(Math.ceil(-23.5));
③public static double floor(double a):返回小于或等于参数的最大double值,等于一个整数
System.out.println(Math.floor(23.5));
System.out.println(Math.floor(-23.5));
④public static int round(float a):按照四舍五入返回最接近参数的int
System.out.println(Math.round(23.5));
System.out.println(Math.round(-23.5));
⑤public static int max(int a,int b):返回两个int值中的较大值
System.out.println(Math.max(20,30));
⑥public static int min(int a,int b):返回两个int值中的较小值
System.out.println(Math.min(20,30));
⑦public static double pow(double a,double b):返回a的b次幂的值
System.out.println(Math.pow(2.3,5.6));
⑧public static double random():返回值为double的正值,[0.0,1.0),随机返回的
System.out.println(Math.random());
System.out.println(Math.random() * 100);
System.out.println((int)(Math.random() * 100));
System类
一、System类概述:
1.System包含几个有用的类字段和方法,他不能被实例化
二、System类的常用方法:
①public static void exit(int status):终止当前运行的java虚拟机,非零表示异常终止
System.exit(0);
②public static long currentTimeMillis():返回当前时间(以毫秒为单位,1000毫秒 = 1秒)
long num = System.currentTimeMillis();
for(int i = 0;i <= 1000;i++) {
System.out.println(i);
}
long num1 = System.currentTimeMillis();
System.out.println("共耗时:" + (num1 - num + "毫秒"));
Object类
一、Object类的概述:
1.Object是类层次结果的根,每个类都可以将Object作为超类。所有类都直接或间接的继承自该类
2.构造方法:public Object()
3.为什么说子类的构造方法默认访问的是父类的无参构造方法?因为他们的顶级父类(Object)只有无参构造方法
二、Object类的常用方法:
①public String toString():返回对象的字符串表示形式。建议所有子类重写该方法,自动生成
@Override
public String toString() {
return "Student{" +
"name = " + name + "\"" + ",age = " + age +"}";
}
②public boolean equals(Object obj):比较对象是否相等。默认比较地址,重写可以比较的内容,自动生成
public class sum{
}
public class sum1{
}
public class sum2{
public static void main(String[] args){
sum s = new sum();
sum1 s1 = new sum1();
s.equals(s1);
}
}
Arrays类
一、Arrays类的概述:
1.Arrays类包含用于操作数组的各种方法
二、Arrays类的常用方法:
①public static String toString(int[] a):返回指定数组的内容的字符串表示形式
int[] arr = {56,25,45,87,89,52,46};
Arrays.toString(arr);
②public static void sort(int[] a):按照数字的顺序排列指定的数组
int[] arr = {56,25,45,87,89,52,46};
Arrays.sort(arr);
三、工具类的设计思想:
①构造方法用private修饰
②成员用public static来修饰
基本类型包装类
一、基本类型包装类概述:
将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据
二、常用的操作之一:
基本数据类型 | 包装类 |
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
Integer类
一、Integer类的概述:
包装一个对象中的原始类型int的值
二、Integer类的常用方法:
①public static Integer valueOf(int i):返回表示指定的int值的Integer实例
Integer i = Integer.valueOf(100);
System.out.println(i);
②public static Integer valueOf(String s):返回一个保存指定值的Integer对象String
Integer i = Integer.valueOf("100");
System.out.println(i);
三、int和String的相互转换:
①public static String valueOf(int i):返回int参数的字符串表示形式。该方法是String类中的方法
int num = 9;
String sum = String.valueOf(num);
System.out.println(sum);
①public static int parseInt(String s):将字符串解析为int类型。该方法是Integer类中的方法
String num = "98";
int i = Integer.parseInt(num);
System.out.println(i);
Date类
一、Date类的概述:
Date代表一个特定的时间,精确到毫秒
二、Date类的常用方法:
①public Date():分配一个Date对象,并初始化,以便它代表它被分配的时间,精确到毫秒
Date da = new Date();
System.out.println(da);
②public Date(long date):分配一个Date对象,并将其初始化为表示从标准基准时间起指定的毫秒数
long num = 1000 / 60 / 60;
Date da2 = new Date(num);
③public long getTime():获取的是日期对象从1970年1月1日00:00:00到现在的毫秒值
Date da3 = new Date();
System.out.println(da3.getTime());
System.out.println((da3.getTime() / 1000 /60 / 60 / 25 / 365) + "年");
⑤public void setTime(long time):设置时间,给的是毫秒值
Date da4 = new Date();
long num1 = System.currentTimeMillis();
da4.setTime(num1);
System.out.println(da4);
SimpleDateFormat类
一、SimpleDateFormat类的概述:
1.SimpleDateFormat是一个具体的类,用于一区域设置敏感的方式格式化和解析日期。
2.日期和时间格式由日期和时间模式字符串指定,在日期和时间模式字符串中从'A'到'Z'以及从'a'到'z'引号的字母被解释为表示日期,或时间字符串的组件的模式字母
三、常用的模式字母以及对应关系如下:
y | 年 |
M | 月 |
d | 日 |
H | 时 |
m | 分 |
s | 秒 |
四、SimpleDateFormat类常用的方法:
①public SimpleDateFormat():构造一个SimpleDateFormat,使用默认模式和日期格式
Date da = new Date();
String num = sdf.format(da);
System.out.println(num);
②public SimpleDateFormat(String pattern):构造一个SimpleDateFormat使用给定的模式和默认的日期格式
Date da = new Date();
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String num1 = sdf1.format(da);
System.out.println(num1);
③public final String format(Date date):将日期格式化成日期/时间字符串
Date da = new Date();
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String num1 = sdf1.format(da);
System.out.println(num1);
④public Date parse(String source):从给字符串的开始解析文本以生成日期
String num2 = "2021-12-19 10:40:40";
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date dd = sdf2.parse(num2);
System.out.println(dd);
Calendr类
一、Calendar类的概述:
1.Calendar为某一时刻和一组日历字段之间的转换提供了一些方法,并为操作日历字段提供了一些方法
2.Calendar提供了一个类方法getInstance用于获取Calendar对象、其日历字段已使用当前日期和时间初始化:
Calendar rightNow = Calendar.getInstance();
二、年月日对应的关键字:
YEAR | 年 |
MONTH | 月 |
DATE | 日 |
三、Calendar类常用的方法:
①public int get(int field):获取年月日用的
Calendar c1 = Calendar.getInstance();
int a = c1.get(Calendar.YEAR);
②public abstract void add(int field,int amount):根据日历的规则,将指定的时间量添加或减去给定的日历字段
Calendar c3 = Calendar.getInstance();//多态形式
c2.add(Calendar.YEAR, -3);//三年前的今天
int a1 = c2.get(Calendar.YEAR);
int b1 = c2.get(Calendar.MONTH) + 1;
int d1 = c2.get(Calendar.DATE);
System.out.println(a1 + "年" + b1 + "月" + d1 + "日");
③public final void set(int year,int month,int date):设置当前日历的年月日
Calendar c3 = Calendar.getInstance();//多态形式
c3.set(2012,8,9);
int a2 = c3.get(Calendar.YEAR);
int b2 = c3.get(Calendar.MONTH);
int d2 = c3.get(Calendar.DATE);
System.out.println(a2 + "年" + b2 + "月" + d2 + "日");