System

但是我们国家是在世界板块中在东八区,所以跟世界有八个小时的时差 所以是1970年1月1日 08:00:00

java 复制代码
public class test {
    public static void main(String[] args) {

        //方法的形参:
        //状态码:
        //0:表示当前虚拟机是正常停止
        //非0:表示当前虚拟机异常停止
//        System.exit(0);
//        System.out.println("看看我执行了吗?");

        //以拼图小游戏为例:
        //当我们需要把整个系统结束的时候,就可以调用这个方法.
//        long l = System.currentTimeMillis();
//        System.out.println(l);//1713011212036

        //拷贝数组
        int[] arr1= {1,2,3,4,5,6,7,8,9,10};
        int[] arr2=new int[10];
        //把arr1数组中的数据拷贝到arr2中
        System.arraycopy(arr1,0,arr2,0,10);
        //参数一:数据源,要拷贝的数据从那个数组而来
        //参数二:从数据源数组中的第几个索引开始拷贝
        //参数三:目的地,我要把数据拷贝到哪个数组中
        //参数四:目的地数组的索引
        //参数五:拷贝的个数

        for (int i = 0; i < arr2.length; i++) {
            System.out.print(arr2[i] + " ");
        }

        //如果arr2 : 0 0 0 0 1 2 3 0 0 0
        System.arraycopy(arr1,0,arr2,4,3);

        // arr2 0 0 7 8 9 0 0 0 0 0
        System.arraycopy(arr1,6,arr2,2,3);
    }
}

currentTimeMillis 返回当前系统的时间毫秒值 可以用来计算程序运行速度

java 复制代码
public class SystemDemo {
    public static void main(String[] args) {
        //1~10000之间有多个质数
        long start = System.currentTimeMillis();
        for(int i = 1;i<=100000;i++){
            boolean flag = isPrime1(i);
            if(flag){
                System.out.println(i);//1514毫秒 换算/1000 1.5
            }
        }
        long end = System.currentTimeMillis();
        //获取程序运行的总时间
        System.out.println(end-start);
    }

    //以前的方式来判断
    public static boolean isPrime1(int number){//number!=0,1
        for(int i =2;i<number;i++){
            if(number%i == 0){
                return false;
            }
        }
        return true;
    }

    //改进之后的方式来判断--效率高
    public static boolean isPrime2(int number){
        for(int i =2;i<=Math.sqrt(number);i++){
            if(number%i==0){
                return false;
            }
        }
        return true;
    }
}

System.arraycopy的细节

1.如果数据源数组和目的地数组都是基本数据类型,那么两者的类型必须保持一致,否则会报错

2.在拷贝的时候需要考虑数组的长度,如果超出范围会报错

3.如果数据源数组和目的地数组都是引用数据类型,那么子类类型可以赋值给父类类型

相关推荐
软泡芙7 小时前
【C# 】各种等待大全:从入门到精通
开发语言·c#·log4j
许彰午7 小时前
我手写了一个 Java 内存数据库(四):索引引擎、SQL 解析与总结
java·数据库·sql
@小码农7 小时前
2026年信息素养大赛【星火征途】图形化编程复赛和决赛模拟题B
开发语言·数据结构·c++·算法
TO_ZRG7 小时前
Android Broadcast Receiver完全入门指南
java·后端·spring
Knight_AL7 小时前
使用 CyclicBarrier + 自定义线程池实现 SpringBoot 并行报表(完整性能对比)
java·spring boot·后端
JMchen1237 小时前
NDK新趋势——Rust与Android深度集成实战
android·开发语言·rust·jni·内存安全·android ndk·移动端性能
代码羊羊7 小时前
Rust 闭包全方位详解:语法、捕获规则、Fn 三特征、返回值实战
开发语言·后端·rust
人道领域7 小时前
【LeetCode刷题日记】347.前k个高频元素
java·数据结构·算法·leetcode
tjl521314_217 小时前
02C++ 静态变量与链接性
java·jvm·c++