package IntegerTest;import java.util.Base64.Decoder;
public class test01 {
/**
* 包装类的基本数据类型
* int => Integer
byte => Byte
short => Short
long => Long
float => Float
double => Double
char => Character
boolean => Boolean
方法原理一致,下面已int-->Integer为例
*/
//----------------------------------------------------------
public static void main(String[] args) {
//integer最值,2147483647 -2147483648
System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
//二进制位数:32 类型为int;
System.out.println(Integer.SIZE);
System.out.println(Integer.TYPE);
//构造Integer对象,可用int或 数字类的String
/**
* 源码如下:
* public Integer(int value) {
this.value = value;
}
public Integer(String s) throws NumberFormatException {
this.value = parseInt(s, 10);
}
throws的异常解释
static NumberFormatException forInputString(String s) {
return new NumberFormatException("For input string: \"" + s + "\"");
}
*/
Integer i1=new Integer(10);
Integer i2=new Integer("123");
Integer i3=new Integer('1');
/**
* 继承Object,自行重写(补)toString方法,
* public String toString() {
return toString(value);
}
Object的toString方法:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
* 下面输出一样;
*/
System.out.println(i1);
System.out.println(i1.toString());
System.out.println("=======================");
//-------------------------------------------------------
/**
* byteValue() : 以 byte 类型返回该 Integer 的值。
*
* public byte byteValue() {
return (byte)value;
}
*/
System.out.println(i3.byteValue());//'1'的acill码为49;
/**
* compareTo(Integer anotherInteger)
* 在数字上比较两个 Integer 对象。
*
* public int compareTo(Integer anotherInteger) {
return compare(this.value, anotherInteger.value);
}
* public static int compare(int x, int y) {
return (x < y) ? -1 : ((x == y) ? 0 : 1);
}
*/
System.out.println(i1.compareTo(i2));//-1
/**
*
* doubleValue() 以 double 类型返回该 Integer 的值。
* public double doubleValue() {
return (double)value;
}
* equals(Object obj) 比较此对象与指定对象
* public boolean equals(Object obj) {
if (obj instanceof Integer) {
return value == ((Integer)obj).intValue();
}
return false;
}
* floatValue() 以 float 类型返回该 Integer 的值。
* longValue() 以 long 类型返回该 Integer 的值。
* intValue() 以 int 类型返回该 Integer 的值。
*
* getInteger(String nm) 确定具有指定名称的系统属性的整数值。
*/
System.out.println(i1.doubleValue());//10.0
System.out.println(i1.equals(i2));//false
/**
*
* signum(int i) 返回指定 int 值的符号函数。
* public static int signum(int i) {
// HD, Section 2-7
return (i >> 31) | (-i >>> 31);
}
* valueOf(int i) 返回一个表示指定的 int 值的 Integer 实例
*/
System.out.println(Integer.valueOf(12));
System.out.println(Integer.signum(1));
}
}