首页 > 代码库 > 【Java学习笔记】其他对象API
【Java学习笔记】其他对象API
System类
1 package p1; 2 3 import java.util.Properties; 4 import java.util.Set; 5 6 public class SystemDemo { 7 8 private static final String LINE_SEPARATOR = System.getProperty("line.separator"); //设置换行 9 10 public static void main(String[] args) {11 /*12 * System:类中的方法和属性都是静态的。13 * 常见方法:14 * long currentTimeMills();获取当前时间的毫秒值。(返回当前时间与协调世界时间1970年1月1日午夜之间的时间差)15 */16 // demo1();17 demo2();18 // demo3();19 20 }21 22 public static void demo3() {23 System.setProperty("age", "28");24 System.setProperty("name", "张三");25 26 27 System.out.println(System.getProperty("age"));28 System.out.println(System.getProperty("name"));29 30 System.out.println("hello"+LINE_SEPARATOR+"woorld");31 }32 /*33 * demo3运行结果:34 * 2835 张三36 hello37 woorld38 39 */40 41 public static void demo2() {42 /*43 * Properties getProperties() 获取系统的属性信息,并存储到Properties集合中44 * 45 * Properties集合中存储都是String类型的键和值 //所以定义Properties类型的变量时不必带泛型46 * 最好使用它自己的存储和取出的方法来完成元素的操作47 */48 Properties prop = System.getProperties();49 // System.out.println(prop);50 51 Set<String> nameSet = prop.stringPropertyNames();52 53 for (String name : nameSet)54 {55 String value =http://www.mamicode.com/ prop.getProperty(name);56 57 System.out.println(name+"::"+value);58 }59 }60 61 public static void demo1() {62 long l1 = System.currentTimeMillis();63 System.out.println(l1);//返回1473476846438 毫秒数64 System.out.println(l1/1000/60/60/24); //返回 17054 天数65 66 // code...67 long l2 = System.currentTimeMillis();68 System.out.println(l2-l1); //返回的是code...代码执行所用时间69 }70 71 }
Runtime类
1 package p1; 2 3 import java.io.IOException; 4 5 public class RuntimeDemo { 6 7 public static void main(String[] args) throws IOException, InterruptedException { 8 /* 9 * 每一个Java程序都有一个Runtime类案例,使应用程序能够与其运行的环境相连,可以通过getRuntime方法获取当前运行时。10 * 应用程序不能创建自己的Runtime类案例。11 */12 13 /*14 * Runtime:没有构造方法摘要,说明该类不可以创建对象15 * 又发现还有非静态的方法,说明该类应该提供静态的返回该类对象的方法16 * 而且只有一个,说明Runtime类使用了单列设计模式。17 */18 19 Runtime r = Runtime.getRuntime();20 21 // Process p = r.exec("notepad.exe");//打开notep22 Process p = r.exec("notepad.exe D:\\1.txt");//打开notepad,在用notepad打开TXT23 //r.exec("软件路径 文件路径");24 Thread.sleep(5000);25 p.destroy();//杀掉进程 5s后notepad关闭26 27 28 }29 30 }
Math类
1 package p1; 2 3 import java.util.Random; 4 5 public class MathDemo { 6 7 public static void main(String[] args) { 8 /* 9 * Math:提供了操作数学运算的方法。都是静态的。10 * 11 * 常用方法:12 * ceil():返回大于参数的最小整数13 * floor():返回小于参数的最大整数14 * round():返回四舍五入的整数15 * pow(a,b):a的b次方16 * random():返回带正号的 double 值,该值大于等于 0.0 且小于 1.017 */18 19 // demo();20 RandomDemo();21 22 23 }24 25 public static void RandomDemo() {26 Random r = new Random();27 28 for (int i=0; i<10; i++)29 {30 double d = r.nextDouble();//与Math.random()方法类似31 System.out.println(d);32 /*33 * 0.01354668482943810534 0.0805871738046229935 0.2515634870910782336 0.814920134085007137 0.3798688284149829338 0.2371813506625031239 0.634893962969442240 0.950877768407648441 0.823147848670474942 0.460580038704442343 */44 }45 46 for (int i=0; i<10; i++)47 {48 int d1 = r.nextInt(10); //随机返回0~10(不包含)间任意一个int值。49 System.out.println(d1);50 51 }52 }53 54 public static void demo() {55 double d1 = Math.ceil(12.53);56 double d2 = Math.floor(12.53);57 double d3 = Math.round(12.13);58 double d4 = Math.pow(10, 3);59 60 System.out.println(d1); //13.061 System.out.println(d2); //12.062 System.out.println(d3);//12.063 System.out.println(d4);//1000.064 65 for (int i=0; i<10; i++)66 {67 double d = Math.random();68 System.out.println(d);69 /*70 * 0.302727561542924871 0.523849587979057772 0.98783981867565473 0.674915693358544174 0.847452436364982475 0.41212422807785176 0.00932494466696975977 0.913691870753976278 0.4119791755652003679 0.327761728196249680 */81 }82 }83 84 }
Date类
1 package p1; 2 3 import java.text.DateFormat; 4 import java.text.ParseException; 5 import java.text.SimpleDateFormat; 6 import java.util.Date; 7 8 public class DateDemo { 9 10 public static void main(String[] args) throws ParseException {11 // method_demo1();12 // method_demo2();13 method_demo3();14 15 }16 17 public static void method_demo3() throws ParseException {18 19 /*20 *将日期格式的字符串-->日起对象21 * 使用的是DateFormat类中的parse()方法。 22 */23 24 String str = "2016年9月10日 星期六";25 String str1 = "2016--09--10 02:22:08";26 27 DateFormat dateformat = DateFormat.getDateInstance(DateFormat.FULL);//格式与日期格式要对应28 DateFormat dateformat1 = new SimpleDateFormat("yyyy--MM--dd hh:mm:ss");29 30 Date date = dateformat.parse(str);31 System.out.println(date);//Sat Sep 10 00:00:00 CST 201632 33 Date date1 = dateformat1.parse(str1);34 System.out.println(date1);//Sat Sep 10 02:22:08 CST 201635 }36 37 public static void method_demo2() {38 /*39 * 对日期对象进行格式化40 * 将日期对象-->日期格式的字符串41 * 使用DateFormat类中的format方法。42 */43 44 Date date = new Date();45 46 //获取日期格式对象,有FULL,LONG,SHORT,MEDIUM(默认)格式。不标明就是默认格式47 DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL);48 // System.out.println(dateFormat); //java.text.SimpleDateFormat@ef7951d749 String str = dateFormat.format(date);50 System.out.println(str);//2016年9月10日 星期六51 52 DateFormat dateFormat1 = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.LONG);53 String str1 = dateFormat1.format(date);54 System.out.println(str1); //2016年9月10日 星期六 下午02时14分18秒55 56 //如果风格想要自定义呢?57 DateFormat dateFormat2 = new SimpleDateFormat("yyyy--MM--dd hh:mm:ss");58 String str2 = dateFormat2.format(date);59 System.out.println(str2); //2016--09--10 02:22:0860 61 }62 63 public static void method_demo1() {64 65 /*66 * 日期对象和毫秒值之间的转换67 * 68 * 毫秒值-->日期对象69 * 1.通过Date对象的构造方法 new Date(timeMills);70 * 2.还可以通过Settime设置71 * 72 * 日期对象-->毫秒值73 * getTime方法74 */75 76 long time = System.currentTimeMillis();77 System.out.println(time); //147348564065978 79 Date date = new Date(); //将当前日期和时间封装成date对象。80 System.out.println(date); //Sat Sep 10 13:39:21 CST 201681 82 Date date1 = new Date(1473485640659l); //将指定毫秒值封装成date对象。83 System.out.println(date1); //Sat Sep 10 13:34:00 CST 201684 85 Date date2 = new Date();86 date2.setTime(1473485640659l);87 long l = date2.getTime();88 System.out.println(l); //147348564065989 }90 91 }
1 package p1; 2 3 import java.text.DateFormat; 4 import java.text.ParseException; 5 import java.util.Date; 6 7 /* 8 * “2012-3-17”到“2012-4-6”间有多少天 9 * 10 * 思路:11 * 日期格式字符串-->日期对象-->获取毫秒值-->相减12 */13 public class DateTest {14 15 public static void main(String[] args) throws ParseException {16 17 String str_date1 = "2012-3-17";18 String str_date2 = "2012-4-6";19 20 test(str_date1,str_date2);21 22 }23 24 public static void test(String str_date1, String str_date2) throws ParseException {25 DateFormat dateformat = DateFormat.getDateInstance();//对应格式26 27 Date date1 = dateformat.parse(str_date1);28 Date date2 = dateformat.parse(str_date2);29 30 long time1 = date1.getTime();31 long time2 = date2.getTime();32 33 long time = Math.abs(time1-time2);34 35 int day = getDay(time);36 System.out.println(day);37 38 }39 40 public static int getDay(long time) {41 int day = (int)(time/1000/60/60/24);42 return day;43 }44 45 }
Calendar类
1 package cn.itcast.p1.otherapi; 2 3 import java.util.Calendar; 4 5 public class CalendarDemo { 6 7 public static void main(String[] args) { 8 Calendar c = Calendar.getInstance(); 9 System.out.println(c);10 /*电脑当前时间的日历11 * 12 * java.util.GregorianCalendar[time=1473493014690,areFieldsSet=true,13 areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",14 offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,15 minimalDaysInFirstWeek=1,ERA=1,YEAR=2016,MONTH=8,WEEK_OF_YEAR=37,WEEK_OF_MONTH=2,DAY_OF_MONTH=10,16 DAY_OF_YEAR=254,DAY_OF_WEEK=7,DAY_OF_WEEK_IN_MONTH=2,AM_PM=1,HOUR=3,HOUR_OF_DAY=15,17 MINUTE=36,SECOND=54,MILLISECOND=690,ZONE_OFFSET=28800000,DST_OFFSET=0]18 19 */20 21 showDate(c);22 23 showDays(2016);//判断2016的二月有多少天24 25 }26 27 public static void showDays(int i) {28 Calendar c = Calendar.getInstance();29 c.set(i, 2, 1);30 31 c.add(Calendar.DAY_OF_MONTH, -1);32 showDate(c);33 }34 35 public static void showDate(Calendar c) {36 37 int year = c.get(Calendar.YEAR);38 int month = c.get(Calendar.MONTH)+1;39 int day = c.get(Calendar.DAY_OF_MONTH);40 int week = c.get(Calendar.DAY_OF_WEEK);41 int hour = c.get(Calendar.HOUR_OF_DAY);42 int min = c.get(Calendar.MINUTE);43 int second = c.get(Calendar.SECOND);44 45 System.out.println(year+"年"+month+"月"+day+"日"+getWeek(week)+" "+hour+":"+min+":"+second);46 }47 48 public static String getWeek(int week) {49 String[] weeks = {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};50 51 return weeks[week];52 }53 54 }
【Java学习笔记】其他对象API
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。