Integer 基本数据类型int  的包装类
Integer 类型的对象包含一个 int 类型的字段
 
 

属性简介

值为 2^31-1 的常量,它表示 int 类型能够表示的最大值 @Native public static final int   MAX_VALUE = 0x7fffffff;
值为 -2^31 的常量,它表示 int 类型能够表示的最小值 @Native public static final int   MIN_VALUE = 0x80000000;
用来以二进制补码形式表示 int 值的比特位数 @Native public static final int SIZE = 32;
二进制补码形式表示 int 值的字节数 public static final int BYTES = SIZE / Byte.SIZE;
表示基本类型 int 的 Class 实例 public static final Class<Integer>  TYPE = (Class<Integer>) Class.getPrimitiveClass("int");
 
 

构造方法

 
构造方法都是新创建对象,分配新的空间
字符串形式构造,默认以十进制的字符串形式解析

包装类
使用对应的基本数据类型int 构造
包装类
使用对应的基本数据类型int的字符串String形式构造
 
 

常用方法

 

比较

static int compare(int x, int y)
静态方法
0   x == y;
-1   x < y;
1    x > y
int compareTo(Integer anotherInteger)
实例方法
两个对象进行比较   ,实际比较两个对象的value值
根本调用通过static int compare(int x, int y)
static int compareUnsigned(int x, int y) 静态方法
两个基本类型int 当做无符号数进行比较   通过+MIN_VALUE进行转换
根本是调用static int compare(int x, int y)
 

parseXXX系列

字符串解析 为 基本类型,
不需要对象,所以都是静态方法
 
static int parseInt(String s, int radix) 静态方法
使用第二个参数指定的基数(进制),将字符串参数解析为有符号的整数
除了第一个字符可以是用来表示负值的 ASCII 减号 '-' ('\u002D’),加号'+' ('\u002B')  外
字符串中的字符必须都是指定基数的数字
static int parseInt(String s) 静态方法
static int parseInt(String s, int radix)  的十进制简化形式
static int parseUnsignedInt(String s, int radix)
静态方法
使用第二个参数指定的基数(进制),将字符串参数解析为无符号的整数
除了第一个字符可以是用来表示正值的 ASCII 加号 '+' ('\u002B’)外
字符串中的字符必须都是指定基数的数字
static int parseUnsignedInt(String s)  静态方法
static int parseUnsignedInt(String s, int radix) 的十进制简化形式
 

valueOf系列

把基本基本类型 包装为对象
用来创建获得对象,所以无需对象,全都是静态方法
 
VaueOf系列都有对应的缓存区, 缓存区范围内对象为同一个 
缓冲区为静态内部类中的数组
缓冲范围为  -128~127
 
static Integer valueOf(int i) 静态方法
读取缓存中的对象或者创建新的对象
static Integer valueOf(String s, int radix) 静态方法
根据指定的基数(进制)解析字符串
根本调用static Integer valueOf(int i)
static Integer valueOf(String s)
静态方法
十进制 解析字符串,   static Integer valueOf(String s, int radix) 的十进制简化形式
根本调用static Integer valueOf(int i)
 

decode

接受通过以下语法给出的十进制、十六进制和八进制数字
Sign是可选的 再往后就是指定基数的字符序列的正值,不能是负数,想要设置负数请仅仅使用符号位 也就是+-1  --1这种肯定不行
Sign DecimalNumeral
Sign 0x HexDigits
Sign 0X HexDigits
Sign # HexDigits
Sign 0 OctalDigits
Sign:
-

 
 

 

XXXValue系列

获取对象的某种基本类型的值
需要获取对象的所以必然全部都是实例方法
强制类型转换的形式,将内部的int值转换为指定的类型
 
byte byteValue()
short shortValue()
int intValue()
long longValue()
float floatValue()
double doubleValue()
 

toUnsignedXXX 系列

无符号相关的转换
static long toUnsignedLong(int x) 静态方法
给定参数int转换为无符号的long
无符号转换为long时,高32位为扩充为0,也就是零位扩展
低32位同参数  int
因此,0和int正数 与对应的long的值相同
负数等于参数int+232
static String toUnsignedString(int i, int radix) 静态方法

在第二个参数指定的基数中,返回第一个参数的字符串表示的无符号整数值
如果基数不在Character.MIN_RADIX 和 Character.MAX_RADIX的范围内, 默认基数为10
 
基数和表示数字的字符的用法和表现和toString中一样

static String toUnsignedString(int i) 静态方法
toUnsignedString(int, int) 十进制的简化形式  同toUnsignedString(int, 10)
 

toString  toXXXString  系列

 
根本都是为了转换为字符串形式
static String toString(int i, int radix) 静态方法
根据指定基数,int    返回一个String 
如果基数小于 Character.MIN_RADIX 或者大于 Character.MAX_RADIX,默认设置为基数 10
如果是负数 第一个符号位负号 '-' ('\u002D'),如果不是负数,将不会有符号
剩下的字符表示第一个参数的大小
如果大小是0  由字符  '0' ('\u0030') 表示,否则用来表示数值的第一个字符不会是0

用以下 ASCII 字符作为数字:
0123456789abcdefghijklmnopqrstuvwxyz
其范围是从 '\u0030' 到 '\u0039' 和从 '\u0061' 到 '\u007A'
如果 radix 为 N, 则按照所示顺序,使用这些字符中的前 N 个作为其数字
因此,十六进制(基数为 16)的数字是 0123456789abcdef
static String toString(int i)  静态方法
toString(int i, int radix) 的十进制简化形式
同toString(int i, 10)
String toString() 实例方法
等同于把对象的value直接调用  toString(int i)
static String toBinaryString(int i) 静态方法
以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式
static String toOctalString(int i) 静态方法
以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式
static String toHexString(int i) 静态方法
以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式
 
内部有一个私有方法用于转换为无符号形式
 

equals

Integer重写了equals方法
比较的是两个Integer对象中内部的 int value值
 

hashCode

 
static int hashCode(int value) 静态方法
返回某个int 数值的hashcode
int hashCode() 实例方法
获取某个Integer对象的hashcode
等同于static int hashCode(int value) 调用 内部value值
 
 

getXXX系列

获取系统属性的数值
static Integer getInteger(String nm, Integer val) 确定具有指定名称的系统属性的整数值

第一个参数被视为系统属性的名称
通过 System.getProperty(java.lang.String) 方法可以访问系统属性

第二个参数是默认值
如果未具有指定名称的属性,或者属性的数字格式不正确,或者指定名称为空或 null
则返回一个表示第二个参数的值的 Integer 对象

static Integer getInteger(String nm, int val) getInteger(String nm, Integer val) 的便捷转换形式
static Integer getInteger(String nm) getInteger(String nm, int val)省略第二个参数的简化形式版本
 
 

其他方法

 
 
最高1  位  最低1   位
前置零个数 和 后置0个数
highestOneBit(int) / lowestOneBit(int)
numberOfLeadingZeros(int) / numberOfTrailingZeros(int) 
位数
循环左移/循环右移
按位翻转 按照字节翻转
bitCount(int)     返回二进制补码表示形式的 1 位的数量,不是全部位数
rotateLeft(int, int)  /  rotateRight(int, int)  
reverse(int)   /   reverseBytes(int)   
取整
求余
divideUnsigned(int, int)
remainderUnsigned(int, int)
Integer还提供了上面几个方法,在开篇中已经描述 Long也有提供   
语义一致
 
 
 
static int signum(int i)  静态方法
返回指定 int 值的符号函数
(如果指定值为负,则返回 -1;如果指定值为零,则返回 0;如果指定的值为正,则返回 1 )
static int sum(int a, int b) 静态方法
求和
static int max(int a, int b) 静态方法
最大值
static int min(int a, int b) 静态方法
最小值
 
 
 
 
 

[三]基础数据类型之Integer详解的更多相关文章

  1. [五]基础数据类型之Short详解

      Short 基本数据类型short  的包装类 Short 类型的对象包含一个 short 类型的字段      原文地址:[五]基础数据类型之Short详解   属性简介   值为  215-1 ...

  2. [二]基础数据类型之Long详解

      Long   Long 基本数据类型long  的包装类 Long 类型的对象包含一个 long类型的字段     属性简介   值为  263-1 的常量,它表示 long 类型能够表示的最大值 ...

  3. [八]基础数据类型之Double详解

    Double 基本数据类型double  的包装类 Double 类型的对象包含一个 double 类型的字段   属性简介 用来以二进制补码形式表示 double 值的比特位数 public sta ...

  4. [七]基础数据类型之Float详解

        Float 基本数据类型float  的包装类 Float 类型的对象包含一个 float 类型的字段    属性简介 用来以二进制补码形式表示 float 值的比特位数 public sta ...

  5. [九]基础数据类型之Boolean详解

      相对于其他的基础性 类型Boolean是很简单的 Boolean 基本数据类型boolean  的包装类 Boolean 类型的对象包含一个 boolean 类型的字段    属性简介 属性也比较 ...

  6. Python数据类型及其方法详解

    Python数据类型及其方法详解 我们在学习编程语言的时候,都会遇到数据类型,这种看着很基础也不显眼的东西,却是很重要,本文介绍了python的数据类型,并就每种数据类型的方法作出了详细的描述,可供知 ...

  7. mysql基础篇 - SELECT 语句详解

    基础篇 - SELECT 语句详解         SELECT语句详解 一.实验简介 SQL 中最常用的 SELECT 语句,用来在表中选取数据,本节实验中将通过一系列的动手操作详细学习 SELEC ...

  8. VC++常用数据类型及其操作详解

    原文地址:http://blog.csdn.net/ithomer/article/details/5019367 VC++常用数据类型及其操作详解 一.VC常用数据类型列表 二.常用数据类型转化 2 ...

  9. Java基础-面向接口编程-JDBC详解

    Java基础-面向接口编程-JDBC详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.JDBC概念和数据库驱动程序 JDBC(Java Data Base Connectiv ...

随机推荐

  1. android BLE Peripheral 做外设模拟设备,供ios、android 连接通讯。

    为了能让其它设备可以发现其设备,先启动特定广播.看自己需要什么广播格式. 对于广播可见的mac address: 在调用startAdvertising();时,mac address 就会改变. 并 ...

  2. VMware手动添加centos7硬盘图文操作及分区超详细

    先设置虚拟机 启动的虚拟机,新关机再设置 1.选择指定虚拟机,点击硬盘 2.虚拟机设置,点击左下角“添加” 3.硬件类型选择硬盘,点击下一步 4.添加硬件向导默认就行,下一步 5.选择磁盘,默认选中, ...

  3. docker 清理容器的一些命令,彻底或选择清理

    越往下的,越要慎重 列出无用的卷 docker volume ls -qf dangling=true 清理无用的卷,容器,镜像 docker volume rm $(docker volume ls ...

  4. MicroSoft CryptoAPI data/file encrypt/decrypt

    linux 用第三方库 Crypto++, 还未实战. CryptoAPI使用两种密钥:会话密钥与公共/私人密钥对.会话密钥使用相同的加密和解密密钥,这种算法较快,但必须保证密钥的安全传递.公共/私人 ...

  5. mysql命名规范

    1.数据库表命名规范: (1)表名前应该加上前缀,表的前缀一个用系统或模块的英文名称缩写,前缀全部大写或首字母大写,表名中包含的单词首字母大写. (2)数据库表名应该有意义,并且易于理解,最好使用可以 ...

  6. Android中ListView的简单使用

    动态添加单行列表: 首先前提是你的布局文件里有一个ListView 单行列表的添加只需要一个list集合即可,使用ArrayAdapter数组适配器绑定更新就行了 首先声明一个ArrayAdapter ...

  7. 图解Raft之领导者选举

    图解Raft领导者选举,这里通过五张图来解答Raft选举的全过程: Raft集群各个节点之间是通过RPC通讯传递消息的,每个节点都包含一个RPC服务端与客户端,初始时启动RPC服务端.状态设置为Fol ...

  8. centos为docker配置加速器

    国内拉去docker镜像慢得可怜,为了解决这个问题,可为docker配置加速器. 1.修改daemon配置文件 sudo mkdir -p /etc/dockervim /etc/docker/dae ...

  9. Java安装以及环境变量配置

    1. 2. 3. 4. 5. class HelloWorld{ public static void main(String args[]){ System.out.print("Hell ...

  10. 给ASP.NET Core Web发布包做减法

    1.引言 紧接上篇:ASP.NET Core Web App应用第三方Bootstrap模板.这一节我们来讲讲如何优化ASP.NET Core Web发布包繁重的问题. 在ASP.NET Core W ...