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"));
相关推荐
ForgeAI码匠8 小时前
ForgeAdmin|Spring Boot 3 后台框架的自动配置设计:少写配置,多做组合
java·spring boot·后端
tongluowan0078 小时前
Redisson的参数及工作原理
java·redis·lua·分布式锁
小娄~~8 小时前
C语言卷子错题集
c语言·开发语言·数据结构
仙俊红9 小时前
Integer\int对比,equals()\hashcode面试
java·面试·职场和发展
WiChP9 小时前
【V0.1B10】从零开始的2D游戏引擎开发之路
java·数据库·游戏引擎
一然明月9 小时前
qt基本用法
开发语言·qt
云烟成雨TD9 小时前
Spring AI Alibaba 1.x 系列【60】检查点机制原理与全流程剖析
java·人工智能·spring
ForgeAI码匠10 小时前
Maven 多模块项目如何避免越写越乱?Forge Admin 的模块边界实践
java·人工智能·开源·maven
hef28810 小时前
Prism图形设计从入门到精通:外观设置、图层顺序与微调技巧
开发语言
z落落10 小时前
C# 数组 最终完整版全套笔记(一维+多维+交错+引用类型+对象数组)
java·笔记·c#