package demo05System;
import java.util.ArrayList;
import java.util.Arrays;
/*
java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作
在system类的API文档中,常用的方法有:
public static long currentTimeMillis()
返回以毫秒为单位的当前时间。
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
*/
public class Demo01System {
public static void main(String[] args) {
demo01();
dmeo02();
}
//----------------------------------------------------
/*
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
参数:
src - 源数组。(复制哪个数组)
srcPos - 源数组中的起始位置。(从哪里开始)
dest - 目标数组。(要复制到哪个数组去)
destPos - 目标数据中的起始位置。(复制到目标数组,从哪个位置开始放)
length - 要复制的数组元素的数量。(要复制个数)
练习:
将src数组中的前3个元素,复制到dest数组的前3个位置上
复制元素前:src数组元素[1,2,3,4,5],dest数组元素[6,7,8,9,10]
复制元素后:src数组元素[1,2,3,4,5],dest数组元素[1,2,3,9,10]
*/
private static void dmeo02() {
//定义源数组
int[] src = {1,2,3,4,5};
//定义目标数组
int[] dest = {6,7,8,9,10};
System.out.println("复制前" + Arrays.toString(dest));//复制前[6, 7, 8, 9, 10]
System.arraycopy(src,0,dest,0,3);
System.out.println("复制前" + Arrays.toString(dest));//复制前[1, 2, 3, 9, 10]
}
//------------------------------------------------
/*
public static long currentTimeMillis():返回以毫秒为单位的当前时间。
用来测试程序的效率
练习:
验证for循环打印数字1-9999所需要的使用的时间(毫秒)
*/
private static void demo01() {
//程序执行前,获取一次毫秒值
long s = System.currentTimeMillis();
System.out.println(s);
for (int i = 0; i < 9999; i++) {
System.out.println(i);
}
long e = System.currentTimeMillis();
System.out.println("程序共耗时" + (e-s) + "毫秒");//程序共耗时354毫秒
}
}
IDEA