一、日期类(Date)
日期类在java.util包下,使用时必须导包。(除java.lang包之外其他的都要导包)
1.获取系统当前时间
import java.util.Date; public class DateText { public static void main(String[] args) { Date date=new Date(); System.out.println(date); } }
运行结果:
Sun Jul 05 17:31:14 CST 2020
2.日期格式化
要进行日期格式化,必须调用SimpleDateFormat类()java.text包下)。
(1)Date-------->String
yyyy年 MM月 d日 H时 m分 ss秒 SSS毫秒
public class DateText { public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS"); String s = sdf.format(new Date()); System.out.println(s); } }
运行结果:
2020-07-05 17:30:17 415
(2)String-------->Date
String time="2020-07-05 17:30:36 456"; SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS"); Date dateTime=simpleDateFormat.parse(time); System.out.println(dateTime);
运行结果:
Sun Jul 05 17:30:36 CST 2020
3.获取自1970年1月1日 00:00:00 000到系统当前时间的毫秒数
long noTime=System.currentTimeMillis(); System.out.println(noTime);
运行结果:
1593941943181
计算耗费毫秒的时长:
long begin=System.currentTimeMillis(); for(int i=0;i<100000;i++){ System.out.println(i); } long end=System.currentTimeMillis(); System.out.println("for循环耗费时长:"+(end-begin)+"毫秒!!");
运行结果:
for循环耗费时长:225毫秒!!
二、数字格式化类(java.text包)
1.数字格式化有哪些?
#任意数字,“,”千分位,“.”小数点,“0”不够位数补0.
2. DecimalFormat数字格式化
###,###.## 表示加入千分位,保留两个小数。 ###,###.0000 表示加入千分位,保留4个小数,不够补0
(1)"###,###.##"
import java.text.DecimalFormat; public class ShuZiGeShiHuaText { public static void main(String[] args) { DecimalFormat decimalFormat=new DecimalFormat("###,###.##"); String s=decimalFormat.format(13123.265); System.out.println(s); } }
运行结果:
13,123.26
(2)"###,###.0000"
DecimalFormat decimalFormat=new DecimalFormat("###,###.0000"); String s=decimalFormat.format(13123.25); System.out.println(s);
运行结果:
13,123.2500
3 .BigDecimal(java.math包)
处理更大精度的数据,财务软件中通常使用BigDecimal
BigDecimal bigDecimal=new BigDecimal(100); BigDecimal bigDecimal1=new BigDecimal(200); BigDecimal bigDecimal2=bigDecimal.add(bigDecimal1); System.out.println(bigDecimal2);
运行结果:
300
三、产生随机数(java.util包)
1.产生任意int类型的数字
Random random=new Random(); int num=random.nextInt(); System.out.println(num);
运行结果:
-748911331 1396142720 。。。。
2.产生某个范围内的int型数字
Random random=new Random(); // 产生[0-100]的随机数。 int num=random.nextInt(101); System.out.println(num);
运行结果:
71 17 。。。。。
四、枚举
1.枚举是一种引用数据类型。
2.枚举编译之后也是class文件。
3.枚举类型怎么定义?
enum 枚举类型名{ 枚举值,枚举值2,枚举值3 }
4.枚举中每一个值可以看做常量
5.当一个方法执行结果超过两种情况,并且是一枚一枚可以列举出来的时候,建议返回值类型设计为枚举类型。
定义一个颜色的枚举类:
public enum Colour { YEALLO,BIUE,BIACK,RED; }
测试类:
public class EnumText { public static void main(String[] args) throws Exception{ Colour colour = Colour.RED; if(colour==Colour.RED){ System.out.println("红色!!"); } if(colour==Colour.BIACK){ System.out.println("黑色!!"); } if(colour==Colour.BIUE){ System.out.println("蓝色!!"); } if(colour==Colour.YEALLO){ System.out.println("黄色!!"); } } }
运行结果:
红色!!