java.Lang. System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在5ystem类的API文档中,

常用的方法有: public static long currentTimeMillis():返回以毫秒为单位的当前时间。

public static void arraycopy(0bject src,int srcPos,Object dest,int destPos,int length): 将数组中指定的数据拷贝到另一个数组中。

例子:

public static void main(String[] args) {

        demo2();

    }

    private static void demo2() {

        int[] src = {1,2,3,4,5};
        int[] dest = {6,7,8,9,10};
        System.out.println(Arrays.toString(dest));
        System.arraycopy(src,0,dest,0,3);
        System.out.println(Arrays.toString(dest));
    }

    public static void demo1(){
        long l = System.currentTimeMillis();
        for (int i = 0; i <=9999; i++) {
            System.out.println(i);
        }
        long l1 = System.currentTimeMillis();
        System.out.println(l1-l);
    }

 

 

StringBuilder原理:

string类

字符串是常量;它们的值在创建之后不能更改。

字符串的底层是一个被final修饰的数组,不能改变,是一个常量

进行字符串的相加,内存中就会有多个字符串,占用空间多,效率低下

String s = "a" + "b"+"c" = "abc";

 

String Builder类

字符串缓冲区,可以提高字符串的操作效率(看成一个长度可以变化的字符串)

底层也是一个数组,但是没有被final修饰,可以改变长度

byte[] value = new byte[16];

“a”+"b"+"c"= "abc"

 

StringBuilder在内存中始终是一个数组,占用空间少,效率高

如果超出了StringBuilder的容量,会自动的扩容

 

posted on 2022-07-04 16:13  淤泥不染  阅读(17)  评论(0编辑  收藏  举报