日期格式化:
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTest {
public static void main(String[] args) throws Exception{
//获取系统当前时间
Date nowTime = new Date();
//获取昨天此时时间
Date time2 = new Date(System.currentTimeMillis() - 1000*60*60*24);
/**
* y 年(year)
* M 月(month)
* d 日(day)
* H 时(Hour)
* m 分(minute)
* s 秒
* 以上字母不能改变,格式可以改变,如:以下改为yy/MM/dd
*/
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//日期格式化
String nowTimeStr = sdf.format(nowTime);//将Date转换为String
System.out.println(nowTimeStr);//输出2022-05-10 18:59:13
//将日期字符串String转换为Date类型
String time = "2022-05-10 18:59:13";
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//这里格式不能随便写,要和字符串格式相同
Date dateTime = sdf2.parse(time);//将String转换为Date,这里需要抛出异常
System.out.println(dateTime);//输出Tue May 10 18:59:13 CST 2022
}
}
统计方法运行耗时:
public class DateTest01 {
public static void main(String[] args) {
//获取自1970年1月1日 00:00:00 000到当前系统的总毫秒数
long nowTime = System.currentTimeMillis();
//统计一个方法耗时(1秒=1000毫秒)
long begin = System.currentTimeMillis();//调用方法前统计一次时间
print();
long end = System.currentTimeMillis();//调用方法后统计一次时间
System.out.println("方法运行耗费时间:"+(end - begin)+"毫秒");
}
public static void print(){
for (int i = 0; i < 1000; i++) {
System.out.println("i="+i);
}
}
}
数字格式化:
import java.text.DecimalFormat;
public class DateTest02 {
public static void main(String[] args) {
/**
* # 代表任意数字
* , 代表千分位
* . 代表小数点
* 0 代表不够时补0
*/
DecimalFormat df = new DecimalFormat("####,###.0000");
String s = df.format(1234.56);
System.out.println(s); //输出1,234.5600
}
}
import java.math.BigDecimal;
/**
* BigDecimal 属于精度极高的引用数据类型,常用于财务软件中
*/
public class BigDecimalTest {
public static void main(String[] args) {
BigDecimal bd1 = new BigDecimal(100);
BigDecimal bd2 = new BigDecimal(200);
//bd1和bd2都是引用,不能直接使用+-/*号,需要调用加减乘除方法
BigDecimal bd3 = bd1.add(bd2);
System.out.println(bd3);//输出300
}
}