System类---相关操作

System类—相关操作

  • 常用的方法

    package cn.xiaoge.day12.demo06;
    
    /*
        java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有:
            public static long currentTimeMillis():返回以毫秒为单位的当前时间。
            public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length):将数组中指定的数据拷贝到另一个数组中。
     */
    
    import java.util.Arrays;
    
    public class Demo01System {
    
        public static void main(String[] args) {
            demo01();
            System.out.println("===================");
            demo02();
        }
    
    
        /*
            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 demo02() {
            // 定义原数组
            int[] src = {1, 2, 3, 4, 5};
            // 定义目标数组
            int[] dest = {6, 7, 8, 9, 10};
    
            System.out.println("复制前的数组: ");
            System.out.println(Arrays.toString(src));
            System.out.println(Arrays.toString(dest));
    
            // 使用System类中的arraycopy把原数组的前3个元素复制到目标数组的前3个位置上
            System.arraycopy(src, 0, dest, 0, 3);
    
            System.out.println("复制后的数组: ");
            System.out.println(Arrays.toString(src));
            System.out.println(Arrays.toString(dest));
        }
    
    
        /*
            public static long currentTimeMillis():返回以毫秒为单位的当前时间。
            用来测试程序的效率
            验证for循环打印数字1-9999所需要使用的时间(毫秒)
         */
        private static void demo01() {
            // 程序执行前, 获取一次毫秒值
            long startTime = System.currentTimeMillis();
            // 执行for循环
            for (int i = 0; i < 9999; i++) {
                System.out.println("哈哈");
            }
            // 程序结束后, 获取一次毫秒值
            long endTime = System.currentTimeMillis();
    
            System.out.println("程序共耗时: " + (endTime-startTime) + "秒");
        }
    
    }
    
    // 运行结果
    9999个哈哈
    程序共耗时: 58===================
    复制前的数组: 
    [1, 2, 3, 4, 5]
    [6, 7, 8, 9, 10]
    复制后的数组: 
    [1, 2, 3, 4, 5]
    [1, 2, 3, 9, 10]
    
发布了275 篇原创文章 · 获赞 89 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/zsx1314lovezyf/article/details/102768014