0. 基本数据类型的 size

  • 8:

    • Byte.SIZE == 8
  • 32:
    • Integer.SIZE == 32
    • Float.SIZE == 32
  • 64:
    • Long.SIZE == 64
    • Double.SIZE == 64
  • boolean 的 sizeof 依赖于 java vm;

1. int

Java 对 -128-127 的整型值进行了缓存:

Integer a = 127;
Integer b = 127;
a == b        // true,a 和 b 取自缓冲中的同一个对象
Integer c = 128;
Integer d = 128;
c == d        // false,c 和 d 是不同的对象;Integer.valueOf(127) == Integer.valueOf(127)
true
Integer.valueOf(128) == Integer.valueOf(128)
false
  • Integer.valueOf 源码:

    public static Integer valueOf(int i) {if (i >= IntegerCache.low && i <= IntegerCache.high)return IntegerCache.cache[i + (-IntegerCache.low)];return new Integer(i);
    }
    
    • IntegerCache 是静态私有内部类;

      • low:为 -128,high:默认为 127,可通过配置(虚拟机参数)进行设置;
      • IntegerCache.cache 是一个 Integer[] 数组;初始化为:cache = new Integer[high-low+1]

2. Integer

  • 将字符串形式的十进制数转换为2进制形式:

    int octet = Integer.parseInt(str, 10);
    String binOctet = Integer.toBinaryString(octet);
    

3. String

String s1 = "abc";
String s2 = "abc";
String s3 = new String("abc");s1 == s2             // true
s1 == s3              // false
s1 == s3.intern() // true

Java 原生数据类型、Integer相关推荐

  1. java 原生数据类型的转换_Java基本数据类型转换分析

    基本数据类型(原生类.内置类型)8种: 整型(默认int):byte(1个字节).short(2个字节).int(4个字节).long(8个字节) 浮点类型(默认double):float(4个字节) ...

  2. java原生类型没有封装_Java基本数据类型与封装类型详解(int和Integer区别)

    Java基本数据类型与封装类型详解(int和Integer区别) 发布于 2020-4-19| 复制链接 摘记: int是java提供的8种原始数据类型之一.Java为每个原始类型提供了封装类,Int ...

  3. JAVA 1.2(原生数据类型 Primitive Data Type)

    1. Java的数据类型分为2类 >> 原生数据类型(primitive data type) >> 引用数据类型(reference data type) 3. 常量和变量 ...

  4. Java SE 第三讲(原生数据类型使用陷阱 Pitfall of Primitive Data Type)

    Java SE 第三讲: 1. Java中的原生数据类型共有8种: 1) 整型:使用int表示.(32位) 2) 字节型:使用byte表示.(表示-128-127之间的256个整数, 8位). 3)短 ...

  5. 圣思园张龙-Java SE 第三讲(原生数据类型使用陷阱 Pitfall of Primitive Data Type)

    Java SE 第三讲:   1.  Java中的原生数据类型共有8种: 1) 整型:使用int 表示.(32位) 2) 字节型:使用byte表示.(表示-128-127之间的256个整数,  8位) ...

  6. java第三课:原生数据类型是用陷阱(pitfall of Primitive Data Type)

    1. Java中的原生数据类型共有8种:     1) 整型:使用int表示.(32位)     2) 字节型:使用byte表示.(表示-128-127之间的256个整数, 8位).     3)短整 ...

  7. java基本数据类型各占多少字节,int和Integer区别

    基本数据类型 类型 字节数 取值范围 byte 1 −27 − 2 7 -2^7到 27−1 2 7 − 1 2^7-1 short 2 −215 − 2 1 5 -2^15到 215−1 2 1 5 ...

  8. java 清空控制台_利用原生库和JNI(Java原生接口)实现H2数据库漏洞利用

    在H2数据库引擎中获取代码执行权限的技术早已是众所周知,但有个要求就是H2能够动态编译Java代码.而本文将向大家展示以前没有公开过的利用H2的方法,并且无需使用Java编译器,即通过原生库和JNI( ...

  9. Java 原生日志 java.util.logging

    简介 Java 中的 Logging API 让 Java 应用可以记录不同级别的信息,它在debug过程中非常有用,如果系统因为各种各样的原因而崩溃,崩溃原因可以在日志中清晰地追溯,下面让我们来看看 ...

最新文章

  1. fastai 核心部件
  2. MATLAB入门级知识
  3. 微信小程序开发的快速步骤方法和最大的坑
  4. java list适配器_详解listview的四种适配器模式
  5. ubuntu14.04 LTS 源码编译安装postgreSQL
  6. 分享一些笔记本电脑日常保养技巧
  7. 二叉树的建立与遍历(数据结构)
  8. wikioi 1098 均分纸牌
  9. Linux:20个linux常用命令
  10. Python得到字符的阿斯克码值 chr ord
  11. S-MAC协议的相关知识
  12. 设计模式之职责链模式(责任链模式)
  13. linux ftp命令大全,linux 操作 ftp 常用命令
  14. c语言中的加减乘除字母,C 语言简单加减乘除运算
  15. 基于C语言的Q格式使用详解
  16. CuraEngine和Cura配置(Ubuntu18.04环境)
  17. 华硕AC68U无线路由器工作原理
  18. cad制图与计算机方面的联系,计算机与CAD制图理论知识.doc
  19. 在windows service 2008上搭建虚拟专用网络
  20. NTC热敏电阻原理及应用

热门文章

  1. java成员访问修饰符,如何使用java反射查找成员的访问修饰符
  2. 微服务笔记(二) 服务发现
  3. hive严格模式和非严格模式的区别
  4. mysql的压缩包,mysql 压缩包安装
  5. python中sorted函数的用法_Python中map,reduce,filter和sorted函数的使用方法
  6. Tensorflow——placeholder(矩阵运算小实例)
  7. 面向对象编程(三):重载运算符和重载函数
  8. Qt总结之十四:uint8_t / uint16_t / uint32_t /uint64_t数据类型详解
  9. 最小二乘法详解(线性拟合与非线性拟合)
  10. open cv+C++错误及经验总结(二)