首页 > 代码库 > JAVA学习第四十五课 — 其它对象API(一)System、Runtime、Math类
JAVA学习第四十五课 — 其它对象API(一)System、Runtime、Math类
一、System类
1.
static long currentTimeMillis()
返回以毫秒为单位的当前时间。
实际上:当前时间与协调世界时 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位測量)。
long time = 1414069291407l;//long型 后面加l System.out.println(time);
2.
static void exit(int status)终止当前正在执行的 Java 虚拟机。
static void gc()执行垃圾回收器
3.重点
staticProperties
getProperties 确定当前的系统属性。
import java.util.Properties; import java.util.Set; public class Main { //获取当前操作系统的换行符 public static final String LINE_SEPARATOR = System.getProperty("line.separator"); public static void main(String[] args) { //获取系统属性信息。并存储到Properties集合中 //properties集合存储的都是String类型的键值对。包java.util.Hashtable<Object,Object> //最好使用自己的存储和取出方法来完毕元素操作 /* Set<String> stringPropertyNames() 返回此属性列表中的键集。当中该键及其相应值是字符串。假设在主属性列表中未找到同名的键。则还包含默认属性列表中不同的键。*/ Properties pro = System.getProperties(); Set<String> set = pro.stringPropertyNames(); for (String string : set) { String value = http://www.mamicode.com/pro.getProperty(string);//取键得值"-:-"+value); } //给系统设置属性信息 System.setProperty("myname", "xxxxxx");//这些信息是全局,不论什么程序都能够调用 } }
二、Runtime类
在查看API文档的时,非常清晰的看到。Runtime没有构造函数(说明无法创建对象),而方法摘要中却有非静态的方法,当中有一个静态的getRuntime()方法。说明Runtime类是利用了单例设计模式设计的。
import java.io.IOException; public class Main { public static void main(String[] args) throws IOException, InterruptedException { Runtime r = Runtime.getRuntime();//返回一个进程 //execute : 运行 xxxx.exe,调用本地一个程序,注意抛异常 //r.exec("notepad.exe");//这样写会先在当前路径下找,找不到然后会去pass路径下找 //指定路径 //r.exec("c:\\xxx\\LoL.exe");注意转移字符 r.exec("notepad.exe C:\\HelloWorld.java");//用XX程序解析XXX文件,注意文件要匹配 Process p = r.exec("notepad.exe"); Thread.sleep(1000);//显示一秒,杀掉,注意抛异常 p.destroy();// 杀掉子进程 } }
三、Math类
public final class Math
注意不能被继承
Math类涵盖众多数学函数。全然能够挑战所学。Math方法都是静态的
PI 圆的周长与直径之比 E即自然对数的底数 这两个不需定义直接
import java.io.IOException; import java.util.Random; public class Main { public static void main(String[] args){ double d1 = Math.ceil(11.51);//返回大于參数的最小整数 double d2 = Math.floor(11.51);//返回小于參数的最大整数 double d3 = Math.round(11.51);//返回四舍五入 System.out.println(d1); System.out.println(d2); System.out.println(d3); System.out.println(Math.max(4, 5)); System.out.println((int)Math.pow(2, 3));//返回a的b次方 for (int i = 0; i < 10; i++) { System.out.println((int)(Math.random()*10));//0-9随机数 //System.out.println(Math.floor(Math.random()*10)); } Random ran = new Random();//Random对象 //返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 double 值。for(int i = 0;i<10;i++){ //System.out.println((int)(ran.nextDouble()*6+1));//简写形式例如以下 int d = ran.nextInt(6)+1;//nextInt是Random中的方法 System.out.println(d); } } }
JAVA学习第四十五课 — 其它对象API(一)System、Runtime、Math类