java常用类库之System类

java.lang.System提供了标准输入、标准输出、错误输出流、快速复制数组、访问外部定义的属性和环境变量等方法

一、输入输出流

static PrintStream err

  • 标准错误输出流,用于打印错误信息
    • 打印的内容是红色字体

static InputStream in

  • 标准输入流
    • 应用场景:Scanner类获取键盘输入

static PrintStream out

  • 标准输出流
    • 打印内容到控制台

举例

System.err.println("错误输出流");
System.out.println("标准输出流");
Scanner input = new Scanner(System.in);

二、常用API

static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

  • 将指定源数组从指定位置开始复制到目标数组的指定位置,长度为length
  • 参数(按顺序)
    • 源数组
    • 源数组开始复制的下标
    • 目标数组
    • 目标数组开始粘贴的下标
    • 复制的长度
      • 复制的长度不能超过(源数组长度-起始索引),否则抛出下标越界异常
      • 复制的长度不能超过(目标数组长度-起始索引),否则抛出下标越界异常
  • 举例
int[] arrs1 = {1,2,3,4,5,6};
int[] arrs2 = {0,0,0,0,0,0,0,0,0,0,0};
//源数组从下标为2的位置开始复制,粘贴到目标数组下标为3的位置,复制4个元素
System.arraycopy(arrs1,2,arrs2,3,4);
System.out.println(Arrays.toString(arrs2)); //[0, 0, 0, 3, 4, 5, 6, 0, 0, 0, 0]

static long currentTimeMillis()

  • 以毫秒为单位返回当前时间
    • 从1970年1月1日早上8点整到现在的毫秒数
  • 应用场景
    • 可以用该方法记录两个时间点的毫秒数,差值为两个时间点之间总共耗费的时间
  • 举例
long time = System.currentTimeMillis();
System.out.println(time);

static void exit (int status)

  • 终止当前运行的java虚拟机
  • status为0代表正常结束,非0代表异常结束
  • 举例
System.exit(0);

static void gc()

  • 运行JVM的垃圾收集器
  • 调用gc方法表名java虚拟机花费了大量精力来回收未使用的对象,以使其当前占用的内存可用于快速重用。当控制从方法调用返回时,java虚拟机已尽最大努力从所有丢弃的对象中回收空间
  • 呼叫System.gc()等同于呼叫Runtime.getRuntime.gec()

Guess you like

Origin blog.csdn.net/future_god_qr/article/details/121175233