Java-其他对象

1. System

描述系统一些信息。
Properties getProperties():获取系统属性信息。
System:类中的方法和属性都是静态的
out:标准输出,默认是控制台
in:标准输入,默认是键盘

package Arrays;
import java.util.Properties;
public class StaticImp {
    public static void main(String[] args) {
        Properties prop = System.getProperties();
        //因为Properties是Hashtable的子类,也就是Map集合的一个子类对象
        //那么可以通过map的方法取出该集合中的元素
        //该集合存储的都是字符串,没有泛型定义
        for(Object obj : prop.keySet()){
            String value = (String)prop.get(obj);
            System.out.println(obj+".............."+value);
        }
    }
}

输出:

sun.desktop..............windows
awt.toolkit..............sun.awt.windows.WToolkit
java.specification.version..............10
file.encoding.pkg..............sun.io
sun.cpu.isalist..............amd64
sun.jnu.encoding..............GBK
java.class.path..............C:\Users\shh\IdeaProjects\untitled\out\production\untitled
//下面的省略
.
.
.

如何在系统中自定义一些特有的信息呢?

System.setProperty("mykey", "myvalue");

获取指定属性信息

 String value = System.getProperty("os.name");

如何在jvm启动的时候(java命令行),加载一些属性信息呢?

java -D(key)=(value)

2. Runtime

  1. Runtime:没有构造函数方法摘要,说明该类不可以在该类之外创建对象
  2. 又发现还有非静态的方法。说明该类应该提供静态的返回该类对象的方法,而且只有一个
  3. 说明Runtime类使用了单例设计模式
package Arrays;

import java.io.IOException;

public class RuntimeDemo {
    public static void main(String[] args) throws IOException, InterruptedException {
        Runtime r = Runtime.getRuntime();//单例模式
        //execute:执行;  xxx.exe
        Process p = r.exec("notepad.exe");
        Thread.sleep(5000);
        p.destroy();
    }
}

3 Math

Math 提供了操作数学运算的方法,,都是静态的
常用方法:
ceil(); 返回大于参数的最小整数
floor(); 返回小于参数的最大整数
round(); 返回四舍五入的整数
pow(a,b); 返回a的b次方
random(); 返回一个double值为正号,大于等于0.0 ,小于1.0 。 返回的值是从该范围(大约)均匀分布而伪随机选择的。

package Arrays;

public class MathDemo {
    public static void main(String[] args) {
        double d1 = Math.ceil(12.56);
        double d2 = Math.floor(12.56);
        double d3 = Math.round(12.56);
        double d4 = Math.pow(2,3);
        System.out.println("d1="+d1); //输出d1=13.0
        System.out.println("d2="+d2); //输出d2=12.0
        System.out.println("d3="+d3); //输出d3=13.0
        System.out.println("d4="+d4); //输出d4=8.0
        for(int i=0; i<10; i++){
            double d1 = Math.random();//0-1之间的数
            double d2 = Math.ceil(Math.random()*10); //1-10之间的整数
            System.out.println("d2="+d2);
        }
        /*输出
            d2=6.0
			d2=10.0
			d2=7.0
			d2=2.0
			d2=7.0
			d2=4.0
			d2=1.0
			d2=3.0
			d2=8.0
			d2=1.0
            */
    }
}

4 Date

日期对象和毫秒值之间的转换:

毫秒值——>日期对象

  1. 通过Date对象的构造方法 new Date(timeMillis);
  2. 还可以通过setTime设置

日期对象——>毫秒值

  1. getTime方法
    因为可以通过具体的数值进行运算
package Arrays;

import java.util.Date;

public class DateDemo {
    public static void main(String[] args) {
        long time = System.currentTimeMillis();
        Date date = new Date(time);
        Date date2 = new Date(1561864226806L);
        long timeMillis = date2.getTime();
        System.out.println(date2);
        System.out.println(timeMillis);

    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值