OK , 就绪, 第一篇博客开撸 ~
先听了毕姥爷激情澎湃的其他类型 ,从这里开始入手吧 :
(一)System类
System类代表系统类,系统的属性和方法都放在该类。System类是一个final类, 它不能被初始化,,即System类中的属性和方法都是static的,可以直接陪调用.System的成员变量有 out,in, err 即标准输入输出和错误输入(流),常用到的System类的方法有下面几个:
a. arraycopy方法 :public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
该方法的作用是数组拷贝,也就是将一个数组中的内容复制到另外一个数组中的指定位置,由于该方法是native方法,所以性能上比使用循环高效。
b. currentTimeMillis方法:public static long currentTimeMillis()
该方法作用是获得系统当前时间。
c. exit方法:public static void exit(int status)
该方法的作用是退出程序。其中status的值为0代表正常退出,非零代表异常退出。使用该方法可以在图形界面编程中实现程序的退出功能等。
d. getProperty方法:public static String getProperty(String key)
该方法的作用是获得系统中属性名为key的属性对应的值。
(二)Runtime类
Runtime类表示运行时操作类,是一个封装了JVM进程的类,每一个JVM都对应着一个Runtime类的实例,此实例由JVM运行时为其实例化。所以找不到Runtime类的构造方法,这是因为Runtime类本身的构造方法是私有化的(单例设计),如果想要得到一个Runtime实例,只有以下方法:
Runtime run=Runtime.getRuntime();
也就是说在Runtime类中提供了一个静态的getRuntime()方法,此类可以取得Runtime类的实例,然后通过Runtime就可以取得一些系统的信息。如,getRuntime(),取得Runtime实例;freeMemory()返回java虚拟机中的空闲内存量;maxMemory()返回JVM的最大内存量;exec(command)执行本机命令。
(三)Process类
Process类是一个抽象类,其内部所有的方法都是抽象的,Runtime.exec()方法可以创建一个本地进程,并返回Process子类的一个实例。创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作,比如,本机窗口进程,守护进程,Microsoft Windows 上的 Win16/DOS 进程,或者 shell 脚本。创建的子进程没有自己的终端或控制台。它的所有标准 io(即 stdin、stdout 和 stderr)操作都将通过三个流 (getOutputStream()、getInputStream() 和 getErrorStream()) 重定向到父进程。父进程使用这些流来提供到子进程的输入和获得从子进程的输出。因为有些本机平台仅针对标准输入和输出流提供有限的缓冲区大小,如果读写子进程的输出流或输入流迅速出现失败,则可能导致子进程阻塞,甚至产生死锁。而要杀死子进程, 则需要Process的destroy()方法。
(四)Date类
Date
表示特定的瞬间,精确到毫秒。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和解析日期字符串。SimpleDateFormat格式化日期类。
SimpleDateFormat
是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化:(日期 -> 文本)、解析(文本 -> 日期)和规范化。
(五)Math类
Math类也是一个final类, 即不需要实例化该类就可以调用它的属性和方法, 因为它们都是static的。Math类常用方法参见下代码:
1 public class MathDemo {
2 public static void main(String args[]){
3 /**
4 * abs求绝对值
5 */
6 System.out.println(Math.abs(-10.4)); //10.4
7 System.out.println(Math.abs(10.1)); //10.1
8
9 /**
10 * ceil天花板的意思,就是返回大的值,注意一些特殊值
11 */
12 System.out.println(Math.ceil(-10.1)); //-10.0
13 System.out.println(Math.ceil(10.7)); //11.0
14 System.out.println(Math.ceil(-0.7)); //-0.0
15 System.out.println(Math.ceil(0.0)); //0.0
16 System.out.println(Math.ceil(-0.0)); //-0.0
17
18 /**
19 * floor地板的意思,就是返回小的值
20 */
21 System.out.println(Math.floor(-10.1)); //-11.0
22 System.out.println(Math.floor(10.7)); //10.0
23 System.out.println(Math.floor(-0.7)); //-1.0
24 System.out.println(Math.floor(0.0)); //0.0
25 System.out.println(Math.floor(-0.0)); //-0.0
26
27 /**
28 * max 两个中返回大的值,min和它相反,就不举例了
29 */
30 System.out.println(Math.max(-10.1, -10)); //-10.0
31 System.out.println(Math.max(10.7, 10)); //10.7
32 System.out.println(Math.max(0.0, -0.0)); //0.0
33
34 /**
35 * random 取得一个大于或者等于0.0小于不等于1.0的随机数
36 */
37 System.out.println(Math.random()); //0.08417657924317234
38 System.out.println(Math.random()); //0.43527904004403717
39
40 /**
41 * rint 四舍五入,返回double值
42 * 注意.5的时候会取偶数
43 */
44 System.out.println(Math.rint(10.1)); //10.0
45 System.out.println(Math.rint(10.7)); //11.0
46 System.out.println(Math.rint(11.5)); //12.0
47 System.out.println(Math.rint(10.5)); //10.0
48 System.out.println(Math.rint(10.51)); //11.0
49 System.out.println(Math.rint(-10.5)); //-10.0
50 System.out.println(Math.rint(-11.5)); //-12.0
51 System.out.println(Math.rint(-10.51)); //-11.0
52 System.out.println(Math.rint(-10.6)); //-11.0
53 System.out.println(Math.rint(-10.2)); //-10.0
54
55 /**
56 * round 四舍五入,float时返回int值,double时返回long值
57 */
58 System.out.println(Math.round(10.1)); //10
59 System.out.println(Math.round(10.7)); //11
60 System.out.println(Math.round(10.5)); //11
61 System.out.println(Math.round(10.51)); //11
62 System.out.println(Math.round(-10.5)); //-10
63 System.out.println(Math.round(-10.51)); //-11
64 System.out.println(Math.round(-10.6)); //-11
65 System.out.println(Math.round(-10.2)); //-10
66 }
67 }