Java 原生数据类型、Integer
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]
- IntegerCache 是静态私有内部类;
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相关推荐
- java 原生数据类型的转换_Java基本数据类型转换分析
基本数据类型(原生类.内置类型)8种: 整型(默认int):byte(1个字节).short(2个字节).int(4个字节).long(8个字节) 浮点类型(默认double):float(4个字节) ...
- java原生类型没有封装_Java基本数据类型与封装类型详解(int和Integer区别)
Java基本数据类型与封装类型详解(int和Integer区别) 发布于 2020-4-19| 复制链接 摘记: int是java提供的8种原始数据类型之一.Java为每个原始类型提供了封装类,Int ...
- JAVA 1.2(原生数据类型 Primitive Data Type)
1. Java的数据类型分为2类 >> 原生数据类型(primitive data type) >> 引用数据类型(reference data type) 3. 常量和变量 ...
- Java SE 第三讲(原生数据类型使用陷阱 Pitfall of Primitive Data Type)
Java SE 第三讲: 1. Java中的原生数据类型共有8种: 1) 整型:使用int表示.(32位) 2) 字节型:使用byte表示.(表示-128-127之间的256个整数, 8位). 3)短 ...
- 圣思园张龙-Java SE 第三讲(原生数据类型使用陷阱 Pitfall of Primitive Data Type)
Java SE 第三讲: 1. Java中的原生数据类型共有8种: 1) 整型:使用int 表示.(32位) 2) 字节型:使用byte表示.(表示-128-127之间的256个整数, 8位) ...
- java第三课:原生数据类型是用陷阱(pitfall of Primitive Data Type)
1. Java中的原生数据类型共有8种: 1) 整型:使用int表示.(32位) 2) 字节型:使用byte表示.(表示-128-127之间的256个整数, 8位). 3)短整 ...
- 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 ...
- java 清空控制台_利用原生库和JNI(Java原生接口)实现H2数据库漏洞利用
在H2数据库引擎中获取代码执行权限的技术早已是众所周知,但有个要求就是H2能够动态编译Java代码.而本文将向大家展示以前没有公开过的利用H2的方法,并且无需使用Java编译器,即通过原生库和JNI( ...
- Java 原生日志 java.util.logging
简介 Java 中的 Logging API 让 Java 应用可以记录不同级别的信息,它在debug过程中非常有用,如果系统因为各种各样的原因而崩溃,崩溃原因可以在日志中清晰地追溯,下面让我们来看看 ...
最新文章
- fastai 核心部件
- MATLAB入门级知识
- 微信小程序开发的快速步骤方法和最大的坑
- java list适配器_详解listview的四种适配器模式
- ubuntu14.04 LTS 源码编译安装postgreSQL
- 分享一些笔记本电脑日常保养技巧
- 二叉树的建立与遍历(数据结构)
- wikioi 1098 均分纸牌
- Linux:20个linux常用命令
- Python得到字符的阿斯克码值 chr ord
- S-MAC协议的相关知识
- 设计模式之职责链模式(责任链模式)
- linux ftp命令大全,linux 操作 ftp 常用命令
- c语言中的加减乘除字母,C 语言简单加减乘除运算
- 基于C语言的Q格式使用详解
- CuraEngine和Cura配置(Ubuntu18.04环境)
- 华硕AC68U无线路由器工作原理
- cad制图与计算机方面的联系,计算机与CAD制图理论知识.doc
- 在windows service 2008上搭建虚拟专用网络
- NTC热敏电阻原理及应用
热门文章
- java成员访问修饰符,如何使用java反射查找成员的访问修饰符
- 微服务笔记(二) 服务发现
- hive严格模式和非严格模式的区别
- mysql的压缩包,mysql 压缩包安装
- python中sorted函数的用法_Python中map,reduce,filter和sorted函数的使用方法
- Tensorflow——placeholder(矩阵运算小实例)
- 面向对象编程(三):重载运算符和重载函数
- Qt总结之十四:uint8_t / uint16_t / uint32_t /uint64_t数据类型详解
- 最小二乘法详解(线性拟合与非线性拟合)
- open cv+C++错误及经验总结(二)