19、javase- System类常用方法

System类常用方法

System类定义了一些与系统相关的属性和方法,它所提供的属性和方法都是静态的,因此,想要引用这些属性和方法,直接使用System类调用即可。

1)exit()

java 复制代码
static void exit(int status)
    终止当前正在运行的Java【虚拟机】,参数status表示状态码,若状态码非0 ,则表示异常终止

2)gc()

java 复制代码
static void gc()
    回收垃圾

例如:

java 复制代码
class Person {	
    // 下面定义的finalize方法会在垃圾回收前被调用
    public void finalize() {
        System.out.println("对象将被作为垃圾回收...");
    }
}
public class Test {
    public static void main(String[] args) {
        Student stu1 = new Student();
        stu1 = null;  // 产生垃圾
        System.gc();  // 通知回收垃圾
        // 单纯等待
        for (int i = 0; i < 100000; i++) { 
            
        }
    }
}

3)currentTimeMillis

java 复制代码
static void currentTimeMillis()
    返回以毫秒为单位的当前时间

例如:

java 复制代码
long startTime = System.currentTimeMillis();// 循环开始时的当前时间

int sum = 0;
for (int i = 0; i < 1000000000; i++) {
    sum += i;
}

long endTime = System.currentTimeMillis();// 循环结束后的当前时间

System.out.println("程序运行的时间为:"+(endTime - startTime)+"毫秒");

4)arraycopy()

java 复制代码
static void arraycopy(
    Object src,int srcPos,
    Object dest,int destPos,
    int length
);
从src源数组复制到dest目标数组,复制从指定的位置开始,到目标数组的指定位置结束。
    src:表示源数组。
	srcPos:表示源数组中拷贝元素的起始位置。
    dest:表示目标数组。
    destPos:表示拷贝到目标数组的起始位置。
    length:表示拷贝元素的个数。

例如:

java 复制代码
int[] fromArray = { 10, 11, 12, 13, 14, 15 }; // 源数组
int[] toArray =   { 20, 21, 22, 23, 24, 25, 26 }; // 目标数组
System.arraycopy(fromArray, 2, toArray, 2, 4); // 拷贝数组元素

// 打印拷贝后数组的元素
System.out.println("拷贝后的数组元素为:");
for (int i = 0; i < toArray.length; i++) {
    System.out.println(i + ": " + toArray[i]);
}

5)getProperties()

java 复制代码
static Properties getProperties()
    获取当前java虚拟机的全部属性,返回一个Properties对象,属性以【键值对】形式存在

例如:

java 复制代码
Properties properties = System.getProperties();     // 获得系统所有属性
Set<String> keys = properties.stringPropertyNames(); // 获得所有属性名称
for (String key : keys) {
    String value = properties.getProperty(key);  // 通过属性名称,获取属性值
    System.out.println(key + ":" + value);
}

6)getProperty()

java 复制代码
static String getProperty(String key)
    获取指定属性名称,获得系统属性

例如:

java 复制代码
System.out.println(System.getProperty("user.country"));

7)getEnv()

java 复制代码
static Map<String,String> getenv()
    返回当前系统环境下的所有环境变量,以Map返回;
static String getenv(String name)
    返回指定环境变量的值,以String返回

例如:

java 复制代码
Map<String, String> envs = System.getenv();
envs.forEach((key, value) -> {
    System.out.println(key + ":" + value);
});
java 复制代码
System.out.println(System.getenv("PATH"));
相关推荐
一只猿Hou2 分钟前
java分页插件| MyBatis-Plus分页 vs PageHelper分页:全面对比与最佳实践
java·mybatis
程序员弘羽8 分钟前
C++ 第四阶段 内存管理 - 第二节:避免内存泄漏的技巧
java·jvm·c++
旷世奇才李先生12 分钟前
Tomcat 安装使用教程
java·tomcat
【ql君】qlexcel14 分钟前
Notepad++ 复制宏、编辑宏的方法
开发语言·javascript·notepad++··宏编辑·宏复制
Zevalin爱灰灰23 分钟前
MATLAB GUI界面设计 第六章——常用库中的其它组件
开发语言·ui·matlab
勤奋的知更鸟25 分钟前
Java 编程之策略模式详解
java·设计模式·策略模式
qq_49244844627 分钟前
Java 访问HTTP,信任所有证书,解决SSL报错问题
java·http·ssl
爱上语文30 分钟前
Redis基础(4):Set类型和SortedSet类型
java·数据库·redis·后端
冰糖猕猴桃31 分钟前
【Python】进阶 - 数据结构与算法
开发语言·数据结构·python·算法·时间复杂度、空间复杂度·树、二叉树·堆、图
lifallen44 分钟前
Paimon vs. HBase:全链路开销对比
java·大数据·数据结构·数据库·算法·flink·hbase