5.8 日期字符串数字的格式化
数字的格式化
①Math类:
abs(); 绝对值
public class Test { public static void main(String[] args) { int a = Math.abs(-7); System.out.println(a); // 打印7 }
ceil(); 向上取整
floor(); 向下取整
public class Test { public static void main(String[] args) { double d1 = Math.ceil(12.345); double d2 = Math.ceil(12.745); double d3 = Math.floor(12.345); double d4 = Math.floor(12.745); System.out.println(d1); //打印13 System.out.println(d2); //打印13 System.out.println(d3); //打印12 System.out.println(d4); //打印12 } }
round(); 四舍五入取整
public class Test { public static void main(String[] args) { double d5 = Math.round(13.111); double d6 = Math.round(13.711); System.out.println(d5); //打印13 System.out.println(d6); //打印14 } }
random(); 取随机数(0-1,不包括1)
还可以用java.util.Random
nextInt(int bounds)
全球唯一标识 UUID 一般用于文件上传,重名的。上传时随机生成改名
import java.util.UUID; public class Test { public static void main(String[] args) { UUID uuid = UUID.randomUUID(); System.out.println(uuid); //打印一个很长的名字 } }
Date 时间戳 某一个时间点到当前时间的毫秒数,弊端:服务器快会重名
public class Test { public static void main(String[] args) { Date date = new Date(); System.out.println(date.getTime()); //一串数字 } }
②NumberFormat
DecimalFormat
public class Test2 { public static void main(String[] args) { double d = 12.3456789; double d2 = 0.35; DecimalFormat df = new DeciamalFormat("##.##") //打印12.34 DecimalFormat df = new DeciamalFormat("000.##") //打印0012.34 DecimalFormat df = new DeciamalFormat("##%") //打印35% String s = df.format(d); String s = df.format(d2); System.out.println(s); String.format("%.2f",d) 也可以格式化小数点,参数写几个都行,不写也行 System.out.println(s1); //打印出12.35 会四舍五入 System.out.printf("%.2f",d); //也是打印12.35 } }
对日期的操作
public class Test2 { public static void main(String[] args) { Date date = new Date(); DateFormat df = DateFormat.getInstance(); DateFormat df = DateFormat.getInstance(DateFormat.SHORT);18-5-8 DateFormat df = DateFormat.getInstance(DateFormat.LONG);2018年5月8日 DateFormat df = DateFormat.getInstance(DateFormat.MEDIUM);2018-5-8 DateFormat df = DateFormat.getInstance(DateFormat.FULL);2018年5月8日 星期二 String s = df.format(date); System.out.println(s); //打印18-5-8 上午10:41 当前时间默认格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T' HH:mm:ss.SSSZ"); //打印出2018-05-08T10:49:04.732+0800 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss.SSSZ"); //打印出2018年05月08日10:49:04.732+0800 SimpleDateFormat sdf = new SimpleDateFormat("MM月"); //打印出05月 String s2 = sdf.format(date); System.out.println(s2); 只取月份 Calendar c = Calendar.getInstance(); //打印出4,只取月份 System.out.println(c.get(Calendar.MONTH)); //打印指定的日期,2014-07-28: SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try { date = sdf.parse("2014-07-28"); } catch (ParseException e) { e.printStackTrace(); } System.out.println(sdf.format(date)); //这个日期只取月份 c.setTime(date); TimeZone tz = TimeZone.getTimeZone("Asia/Tokyo"); 亚洲日本东京 c.setTimeZone(tz); //时区,抽象类,没法实例化 System.out.println(c.get(Calendar.MONTH)); //日期只取月份 String[] ss = TimeZone.getAvailableIDs(); //获取全国时区 for(int i = 0;i<ss.length;i++){ System.out.println(ss[i]); } } }
posted on 2018-05-08 15:16 sunyexiang 阅读(133) 评论(0) 编辑 收藏 举报