几个类System ,Runtime,Date,Calender,Math

来源:互联网 发布:网络舆论的利与弊 编辑:程序博客网 时间:2024/06/12 01:33

1,System:

System :类中的方法和属性都是静态的。

out:标准输出,默认是控制台。

in,标准输入,键盘默认呢

描述系统一些信息。

获取系统属性信息:Properties getProperties();

import java.util.Properties;public class SysTest {public static void main(String[] args) {Properties prop = System.getProperties();// 因为Properties 是hashtable的子类,也就是Map集合的有一个子类对象// 那么可以通过map的方法取出该集合中的元素。// 该集合中存储的都是字符串,没有泛型定义。//如何在系统中自定义系统信息。System.setProperty("mykey", "myvalue");String value=System.getProperty("os.name");System.out.println("value="+value);/* *获取所有属性信息。  for (Object obj : prop.keySet()) {String value = (String) prop.get(obj);System.out.println(obj + "::" + value);}*/}}


2,Runtime

没有构造函数,不能直接创建对象。会直接想到该类中的方法都是静态的。

但是,有方法摘要,方法都是非静态的。

对象通过方法来获取,而且该方法是静态的,并返回值类型是本类类型。getRuntime()返回与当前java应用程序相关的运行时对象。

该方法是static Runtime getRuntime().;

由这个特点可以看出单例设计模式。

 

import java.io.IOException;public class RuntimeTest {public static void main(String[] args) throws IOException, Exception {Runtime r = Runtime.getRuntime();Process p= r.exec("notepad.exe c:\\SysTest.java");Thread.sleep(4000);p.destroy();}}


3,Date

import java.text.SimpleDateFormat;import java.util.Date;public class DateTest {public static void main(String[] args) {Date d = new Date();System.out.println(d);// Wed Jul 24 10:35:51 CST 2013,打印的时间看不懂,希望有些格式// 将模式封装到SimpleDateformat对象中。SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 E  hh:mm:ss");// 调用format方法让模式格式化指定对象。String time = sdf.format(d);System.out.println("time:" + time);// time:2013年07月24日 星期三 10:45:23}}

4,Calender

import java.util.Calendar;public class CalenderTest {public static void main(String[] args) {Calendar c = Calendar.getInstance();System.out.println(c);/* * System.out.println(c.get(Calendar.YEAR) + "年" + * (c.get(Calendar.MONTH) + 1) + "月" + (c.get(Calendar.DAY_OF_MONTH) + * 1) + "日" + "星期" + (c.get(Calendar.WEEK_OF_MONTH) - 1) + "  " + * c.get(Calendar.HOUR) + "时" + c.get(Calendar.MINUTE) + "分" + * c.get(Calendar.SECOND) + "秒"); */// 查表法String[] month = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月","九月", "十月", "十一月", "十二月" };// 月份从0开始。String[] week = { "", "星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };// 星期天是第一天System.out.println(c.get(Calendar.YEAR) + "年");int index = c.get(Calendar.MONTH);System.out.println(month[index] + "月");int index2 = c.get(Calendar.WEEK_OF_MONTH);System.out.println(week[index2]);}}


 

import java.util.Calendar;/* * 1,获取任意年的二月有多少天 *    思路:根据指定的年设置一个时间,c.set(year,2,1)//某一年的三月一日 *    c.add(Calendar.DAY_OF-MONTH,-1);//三月一日往前推一天就是2月的最后一天 *    2,获取昨天现在的时刻 *    c.add(Calendar.DAY_OF_MONTH,-1); */public class CalenderTest {public static void main(String[] args) {Calendar c = Calendar.getInstance();c.add(Calendar.YEAR, 4);//加4年printCalendar(c);}public static void printCalendar(Calendar c){String[] month = { "一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月","九月", "十月", "十一月", "十二月" };// 月份从0开始。String[] week = { "", "星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };// 星期天是第一天System.out.println(c.get(Calendar.YEAR) + "年");int index = c.get(Calendar.MONTH);System.out.println(month[index] + "月");int index2 = c.get(Calendar.WEEK_OF_MONTH);System.out.println(week[index2]);}}


import java.util.Random;//Math.random()和new  java.util.Random方法完全相同public class MathTest {public static void main(String[] args) {for (int x = 0; x < 10; x++) {double d = Math.random();// 大于等于0.0且小于1.0// printObj(d);/* * int num=(int)(Math.random()*10+1);//1-10 *  * printObj(num); */Random r = new Random();int n = r.nextInt(10);// 0-10,但是不包含10,两种方式,哪一种都可以。printObj(n);}}public static void show() {// double d= Math.ceil(-16.3);//ceil返回大于指定数据的最小整数,返回-16double d = Math.ceil(16.3);double d1 = Math.floor(16.3);// floor返回小于指定数据的最大整数。long l = Math.round(12.34);// 四舍五入double d2 = Math.pow(2, 3);// 2的三次方printObj(d);printObj(d1);printObj(l);printObj(d2);}public static void printObj(Object obj) {System.out.println(obj);}}


原创粉丝点击