在Java中,System
类提供了访问系统级资源的方法,例如标准输入、输出、错误流,系统属性等。这个类的方法大多是静态的,所以可以直接通过类名来调用。
以下是一些常用的 System
类方法以及相应的代码示例:
currentTimeMillis()
方法:返回当前时间与1970年1月1日午夜之间的毫秒差。long currentTime = System.currentTimeMillis(); System.out.println("当前时间毫秒数:" + currentTime)
getProperty(String key)
方法:获取指定键的系统属性。String javaVersion = System.getProperty("java.version"); System.out.println("Java版本:" + javaVersion);
out
输出流:用于向控制台输出信息。System.out.println("Hello, world!");
in
输入流:用于从键盘读取输入。Scanner scanner = new Scanner(System.in); System.out.print("请输入您的姓名:"); String name = scanner.nextLine(); System.out.println("您输入的姓名是:" + name);
exit(int status)
方法:退出当前正在运行的 Java 虚拟机,并指定一个状态码。System.out.println("程序即将退出..."); System.exit(0); // 0 表示正常退出,非 0 值表示异常退出
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
方法:用于将数组中指定位置的数据复制到另一个数组中。int[] sourceArray = {1, 2, 3, 4, 5}; int[] destinationArray = new int[5]; System.arraycopy(sourceArray, 0, destinationArray, 0, sourceArray.length); System.out.println("目标数组:"); for (int num : destinationArray) { System.out.print(num + " "); }
gc()
方法:请求系统进行垃圾回收。System.gc();
getenv(String name)
方法:获取指定环境变量的值。String path = System.getenv("PATH"); System.out.println("系统环境变量 PATH 的值为:" + path);
setIn(InputStream in)
、setOut(PrintStream out)
、setErr(PrintStream err)
方法:重新分配标准输入、输出和错误流。// 重新分配标准输入流 InputStream inputStream = new FileInputStream("input.txt"); System.setIn(inputStream); // 重新分配标准输出流 PrintStream printStream = new PrintStream(new FileOutputStream("output.txt")); System.setOut(printStream); // 重新分配标准错误流 PrintStream errorStream = new PrintStream(new FileOutputStream("error.log")); System.setErr(errorStream);
nanoTime()
方法:返回当前时间与某个起始时间的纳秒差。long startTime = System.nanoTime(); // 执行一些操作... long endTime = System.nanoTime(); long elapsedTime = endTime - startTime; System.out.println("操作执行时间(纳秒):" + elapsedTime);
clearProperty(String key)
方法:移除指定键的系统属性。System.clearProperty("my.property");
lineSeparator()
方法:返回当前系统的行分隔符。String lineSeparator = System.lineSeparator(); System.out.println("当前系统的行分隔符是:" + lineSeparator);
getProperties()
方法:获取当前系统的所有属性。Properties properties = System.getProperties(); properties.list(System.out);
identityHashCode(Object x)
方法:返回指定对象的哈希码。Object obj = new Object(); int hashCode = System.identityHashCode(obj); System.out.println("对象的哈希码:" + hashCode);
load(String filename)
方法:从系统中加载指定的库文件。System.load("libexample.so");
loadLibrary(String libname)
方法:加载具有指定库名的本机库。System.loadLibrary("example");
runFinalization()
方法:强制运行系统的终结器。System.runFinalization();