?日期类(Date)
构造方法
Date() ??????????分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。 |
Date nowTime = new Date();
System.out.println(nowTime);
日期格式化(SimpleDateFormat)
当我们对输出格式有要求时,会用到SimpleDateFormat这个类
SimpleDateFormat是java.text包下的,专门负责日期格式化的。 yyyy 年 MM 月 dd 日 HH 时 mm 分 ss 秒 SSS 毫秒 在日期格式中,除了y M d H m s S这些字符不能随意写之外,剩下的符号自己随意组织
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
String nowTimeStr = sdf.format(nowTime);
System.out.println(nowTimeStr);
?
String ---> Date;
String time = "2008-08-08 08:08:08 888";
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
Date dateTime = sdf2.parse(time);
System.out.println(dateTime);
时间戳 (currentTimeMillis方法)
currentTimeMillis,System类包下的方法
- 获取自1970年1月1日 00:00:00 000到当前系统时间的总毫秒数
long s = System.currentTimeMillis();
System.out.println(s);
public static void main(String[] args) {
Date time = new Date(1);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
String strTime = sdf.format(time);
System.out.println(strTime);
------------------------------------------------------------
Date time2 = new Date(System.currentTimeMillis() - 1000*60*60*24);
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
String strTime2 = sdf.format(time2);
System.out.println(strTime2);
}
public static void main(String[] args){
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);
}
}
数字格式化(DecimalFormat)
DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。帮你用最快的速度将数字格式化为你需要的样子。
DecimalFormat df = new DecimalFormat("###,###.##");
String s = df.format(1234.567);
System.out.println(s);
DecimalFormat df2 = new DecimalFormat("###,###.0000");
String s2 = df2.format(1234.56);
System.out.println(s2);
?(BigDecimal)
BigDecimal v1 = new BigDecimal(100);
BigDecimal v2 = new BigDecimal(200);
BigDecimal v3 = v1.add(v2);
BigDecimal v4 = v2.divide(v1);
随机数(Random)
Random random = new Random();
int num1 = random.nextInt();
System.out.println(num1);
random.nextInt(101);
? ? ?小测试:生成5个不重复的随机数,放到数组中
public static void main(String[] args) {
Random random = new Random();
int[] a = new int[5];
int index = 0;
while(index < a.length){
int r = random.nextInt(6);
if(panDuan(a,r)){
a[index++] = r;
}
}
System.out.println(Arrays.toString(a));
}
public static boolean panDuan(int []a,int r){
for (int i = 0; i < a.length; i++) {
if(r == a[i]){
return false;
}
}
return true;
}
|