------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
黑马程序员 java 基础 毕向东 面向对象 常用类 System Math Property Calendar Date Runtime
1 System
package day18OtherClass; import java.util.Properties; import static java.lang.System.*; public class SystemDemo { /*获取系统属性信息 * System 类中的方法和属性都是静态的 * out :标准输出 默认是控制台 * in :标准输入了 默认键盘 * Properties getProperties() * */ public static void main(String[] args) { Properties p=System.getProperties(); System.setProperty("amykey","cuiui"); //因为Properties是HashTable 的子类 //也就是Map集合的子类对象 //就可以通过map的方法去除该集合中的元素 //该集合存储的都是字符串没有泛型定义 //Set<String> stringPropertriesNames() //获指定属性信息 String osname=System.getProperty("os.name"); out.println("osname:"+osname); //获取所有属性信息 for(Object o:p.keySet()){ String v=(String)p.get(o); System.out.println("key:"+o.toString()+"--v:"+v); } //如何在系统中自定义系统信息呢 System.setProperty("amykey","cuiui"); //在jvm 启动时。动态加载一下属性信息 } }
2Runtime
package day18OtherClass; import static java.lang.Runtime.*; import java.io.IOException; public class RuntimeDemo { /* * 该类没有提供构造函数 * 说明不能new 对象 * 那么会想到该类的中的方法是静态的 * 发现该类还有非静态方法 * * 说明该类会提供方法获取本来对象 * 而且方法是静态的的 * * 由这个特点可以看出该类使用了单例设计模式 * 该方法是:static Runtime getRuntime() * */ public static void main(String[] args) { Runtime r=getRuntime(); Process p = null; try { // p=r.exec("write.exe"); p=r.exec("notepad.exe SystemDemo.java"); } catch (IOException e) { e.printStackTrace(); } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("--------"); p.destroy(); System.out.println("--------"); } }
3Date
package day18OtherClass; import java.util.Date; import java.text.SimpleDateFormat; import static java.lang.System.*; public class DateDemo { /* * */ public static void main(String[] args) { Date d=new Date(); out.println("d:"+d); //打印的时间看不懂。希望有些格式 //将格式封装在SimpleDateFormat对象中,调用format指定对象 SimpleDateFormat sdf=new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z"); System.out.println(sdf.format(d)); sdf=new SimpleDateFormat("MM-dd-HH-mm-ss-z"); System.out.println(sdf.format(d)); sdf=new SimpleDateFormat("MM-dd HH:mm:ss"); System.out.println(sdf.format(d)); sdf=new SimpleDateFormat("MM月dd日"); System.out.println(sdf.format(d)); sdf=new SimpleDateFormat("HH时mm分ss秒z"); System.out.println(sdf.format(d)); sdf=new SimpleDateFormat("月d日H时m分s秒z"); System.out.println(sdf.format(d)); sdf=new SimpleDateFormat("w"); System.out.println("年中的周数:"+sdf.format(d)); sdf=new SimpleDateFormat("W"); System.out.println("月份中的周数 :"+sdf.format(d)); sdf=new SimpleDateFormat("a"); System.out.println("Am/pm 标记:"+sdf.format(d)); sdf=new SimpleDateFormat("E"); System.out.println("星期中的天数 "+sdf.format(d)); } }
4Calendar
package day18OtherClass; import java.util.Calendar; /* * 获取任意一年的二月有多少天 * 思路:根据指定时间设置年 * c.set(year,2,1) c.add(Calendear.DAY_OF_MONTH,-1) 3月1往前推一天,就是2月的最后一项 获取昨天的这个时刻 */ import static java.util.Calendar.*; public class CalendarDemo { /* * * */ public static void main(String[] args) { // printCal(); for(int i=2000;i<2020;i++){ getFebruaryDays(i); } } static int getFebruaryDays(int year){ Calendar c=Calendar.getInstance(); c.set(year,2,1); c.add(DAY_OF_MONTH,-1); int day=c.get(Calendar.DAY_OF_MONTH); System.out.println(year+"年2月有"+day+"天"); return day; } static void printCal(){ Calendar c=Calendar.getInstance(); // System.out.println(c); // c.set(2012, 1, 2); // c.add(Calendar.YEAR, -3); // c.add(Calendar.MONTH, -3); c.add(Calendar.DAY_OF_MONTH, -3); int year=c.get(YEAR); int month=c.get(MONTH); int dayOfMonth=c.get(DAY_OF_MONTH); int dayOfWeek=c.get(DAY_OF_WEEK); int weekOfMonth=c.get(WEEK_OF_MONTH); int weekOfYear=c.get(DAY_OF_YEAR); int hour=c.get(HOUR); int hourOfDay=c.get(HOUR_OF_DAY); int min=c.get(MINUTE); int sec=c.get(SECOND); System.out.println("year:"+year+ "\nmonth 从 0月开始计算:"+month+ "\ndayOfMonth:"+dayOfMonth+ "\ndayOfWeek 周7第一天:"+dayOfWeek+ "\nweekOfMonth:"+weekOfMonth+ "\nweekOfYear:"+weekOfYear+ "\nhour 12时:"+hour+ "\nhourOfDay 24时:"+hourOfDay+ "\nmin:"+min+ "\nsec:"+sec); int mon=Calendar.MONTH; System.out.println(mon); mon=c.get(Calendar.MONTH); System.out.println(mon); } }
5Math
package day18OtherClass; import static java.lang.Math.*; import static java.lang.System.*; import java.util.Random; public class MathDemo { /* * ceil返回大于指定数据 的最小整数 * floor 返回小于指定数据的最小整数 * round 四舍五入 * pow 幂运算 * random 随机数(0 到 1 之间 包含 0) * * * 联系:给定一个小数 * 保留后两位 * */ public static void main(String[] args) { out.println(ceil(16.3)); out.println(ceil(-16.3)); out.println(ceil(-16.7)); out.println(floor(16.3)); out.println(floor(-16.3)); out.println(floor(-16.7)); out.println(round(-16.7)); out.println(round(-16.1)); out.println(round(16.1)); out.println(round(16.7)); out.println(pow(2,3)); out.println(random()); Random r=new Random(); for (int i = 0; i < 10; i++) { System.out.println(r.nextInt(10)); } } static void getTwoDec(){ double d=3242.2324; } }