(1)java.util.date :该包主要用于获取系统日期格式
(2)java.sql.date :该包主要用于定义数据库日期格式
Date() | 分配 Date 对象并初始化此对象,并获取当前系统时间(精确到毫秒)。 |
Date(Long date) | 分配 Date 对象并初始化此对象,传递的参数是毫秒数,以返回毫秒数所对应的时间。 |
(1)
将当前日期按一定的格式转换成字符串
将数字字符串转换成对应的日期格式
package daily; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class date { public static void main(String[] args) throws ParseException { Date now = new Date(); //Date已经重写toString方法,所以打印输出的不是这个对象,是当前时间 System.out.println(now); //日期--->字符串 SimpleDateFormat ds = new SimpleDateFormat("yyyy-MM-dd,HH时mm秒ss毫秒"); //获取日期格式化对象,并按照模式串中的方式进行时间格式解析 String s1 = ds.format(now);//将格式化的时期对象通过format方法去解析当前时间,返回的是字符串 System.out.println(s1); //字符串--->日期 String f = "2020-03-10,12:18:30";//字符串的日期格式,必须要和SimpleDateFormat中的日期格式要一致,不然会出错 SimpleDateFormat s2 = new SimpleDateFormat("yyyy-MM-dd,HH:mm:S"); Date d = s2.parse(f);//将格式化的时期对象通过parse方法去解析当前字符串,返回的是日期格式 System.out.println(d); } } 输出: Fri May 08 20:59:09 CST 2020 2020-05-08,20时59秒09毫秒 Tue Mar 10 12:18:00 CST 2020
(2)获取自1970年:01:01 00:00:00 到目前的毫秒数
public class date { public static void main(String[] args) { Long d = System.currentTimeMillis(); System.out.println(d); } } 运行结果:1588943655532
(3)统计一个方法运行时间
public class date { public static void main(String[] args) { Long s = System.currentTimeMillis(); for (int i=0;i<30;i++) { System.out.println(i); } Long e = System.currentTimeMillis(); System.out.println("该方法运行"+(e-s)+"ms"); } } 运行结果: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 该方法运行6ms
(4)通过有参构造方法:Date(Long date),操作时间,date参数表示传递的是毫秒,即获取传入毫秒所对应的自1970年00月00日00时00分00秒00ms以来,对应的时间
public class date { public static void main(String[] args) { Date d1 = new Date(1); //传递1,表示1970:00:00,00:00:00 1ms Date d2 = new Date(1588858826631L);//自1970以来,1588858826631毫秒数对应的年月日时分秒毫秒 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 SS"); String s1 = sdf.format(d1); String s2 = sdf.format(d2); System.out.println(s1); System.out.println(s2); //获取昨天的当前时间 Long yesterday = (System.currentTimeMillis()-1000*60*60*24); String s3 = sdf.format(yesterday); System.out.println(s3); } } 运行结果:
1970年01月01日 08时00分00秒 01
2020年05月07日 21时40分26秒 631
2020年05月07日 21时51分02秒 366
(1)字符:
# | 表示任意数字 |
, | 表示千分位 |
. | 表示小数点 |
0 | 表示小数位长度不够可以补0 |
public class datasfd { public static void main(String[] args) { DecimalFormat df = new DecimalFormat("###,###,###.000");//000表示保留三个小数位,不够补零 String df1 = df.format(1004396868.3); System.out.println(df1); } } 运行结果: 1,004,396,868.300
(2)Bigdecimal:属于大数据,精度极高,不属于基本数据类型,属于引用数据类型(java对象),一般用于财务软件的开发,是java.math包下的
public class datasfd { public static void main(String[] args) { BigDecimal b1 = new BigDecimal(300); BigDecimal b2 = new BigDecimal(200); //应用方法进行相加 BigDecimal result = b1.add(b2); System.out.println(result); } } 运行结果: 500
(3)产生随机数的random对象
import java.util.Random; public class random { public static void main(String[] args) { Random random = new Random(); int i1 = random.nextInt();//从int数据范围随机产生一个随机数 int i2 = random.nextInt(101);//设置随机数边界,101表示随机数的范围在0——100 System.out.println(i1); System.out.println(i2); } } 运行结果: -1830655855 5
编写一个程序,随机产生5个随机数,数字范围在[0,100]
package daily; import java.lang.reflect.Array; import java.util.Arrays; import java.util.Random; public class random { public static void main(String[] args) { Random random = new Random(); int[] a = new int[5];//创建一个长度为5的数组 for (int i=0;i<a.length;i++)//对数组进行初始化,不初始化数组默认存储0 { a[i]=-1; } int b=0; while (b<a.length)//b控制元素插入位置 { boolean flag=true;//标志位用来判断元素是否遍历完毕
int number = random.nextInt(101); for (int j =0;j<a.length;j++) { if (a[j] == number) { flag=false; break; } } if (flag) { a[b]=number; b++; } } System.out.println(Arrays.toString(a)); } }
运行结果:
[73, 68, 83, 3, 10]
}
原文:https://www.cnblogs.com/ibear/p/12856250.html