程序员社区

int Integer String 性能开销

Hello,欢迎来到程序员社区。 今天聊一聊 int Integer String 性能开销,希望对大家有所帮助。

Java面试手册PDF下载:[点击下载最全Java面试手册]编程电子书汇总(http://117.78.51.75/219-2)

                
                

针对int integer string的值比较堆内存的消耗,做一篇总结

    public static void St编程电子书汇总ringTest(){
        /**
         * 获取时间
         */
        Calendar Cld = Calendar.getInstance();
        int YY = Cld.get(Calendar.YEAR) ;
        int MM = Cld.get(Calendar.MONTH)+1;
        int DD = Cld.get(Calendar.DATE);
        int HH = Cld.get(Calendar.HOUR_OF_DAY);
        int mm = Cld.get(Calendar.MINUTE);
        int SS = Cld.get(Calendar.SECOND);
        int MI = Cld.get(Calendar.MILLISECOND);
        int a = 1;
        int b = 1;
        System.out.println(new SimpleDateFormat("yyyy/MM/dd-HH:mm:ss:SSS").format(new DJava面试手册ate()));
        for (int j = 0; j  10; j++) {
            for (int i = 0; i  2147483647; i++) {
                if(a==b){
                    //System.out.println(true);
                }else{
                    //System.out.println(false);
                }
            }
        }
        System.out.println(new SimpleDateFormat("yyyy/MM/dd-HH:mm:ss:SSS").format(new Date()));
    }
2020/09/23-20:58:01:195
2020/09/23-20:58:01:205
时间开销:10
将上述
       int a = 1;
       int b = 1;
       更换为
       Integer a = 1;
       Integer b = 1;
       得到:
       2020/09/23-20:59:02:105
       2020/09/23-20:59:02:115
       时间开销:10==更换为equals
       2020/09/23-21:01:35:135
       2020/09/23-21:01:35:145
    时间开销:10
       String a = "1";
       String b = "1";
       System.out.println(new SimpleDateFormat("yyyy/MM/dd-HH:mm:ss:SSS").format(new Date()));
       for (int j = 0; j  10; j++) {
  编程电子书汇总         for (int i = 0; i  2147483647; i++) {
               if((a==b)){
               }else{
               }
           }
       }
2020/09/23-21:03:17:354
2020/09/23-21:03:17:364
时间开销:10
        String a = "1";
       String b = "1";
       System.out.println(new SimpleDateFormat("yyyy/MM/dd-HH:mm:ss:SSS").format(new Date()));
       for (int j = 0; j  10; j++) {
           for (int i = 0; i  2147483647; i++) {
               if((a.equals(b))){
               }else{
               }
           }
       }
2020/09/23-21:06:Java面试手册13:304
2020/09/23-21:06:20:832
时间开销:7.528

得到:
integer int string 使用==消耗差距不大,可以忽略不计,
integer使用equals消耗也很小,但是string相对integer消耗非常大.

> 时间不一定能证明很多东西,但是一定能看透很多东西。坚信自己的选择,不动摇,使劲跑,明天会更好。

赞(0) 打赏
未经允许不得转载:IDEA激活码 » int Integer String 性能开销

一个分享Java & Python知识的社区