作者:欢迎bm访问老年人空间 | 来源:互联网 | 2023-05-17 10:20
本期知识点:Integer类的常用方法类IntegerInteger类在对象中包装了一个基本类型int的值。Integer类型的对象包含一个int类型的字段。为了对基本数
本期知识点:
Integer类的常用方法
类 Integer
Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。
为了对基本数据类型进行更多的操作以及运算,所以Java针对这种情况:就提供了基本的数据类型包装类类型。
byte ———— Byte
short ———— Short
int ———— Integer
long ———— Long
float ———— Float
double ———— Double
boolean ———— Boolean
char ———— Character
1. Integer类的构造方法
public Integer(int value) 构造一个新分配的 Integer 对象,它表示指定的 int 值。
public Integer(String s) 构造一个新分配 Integer 对象,它表示 String 参数所指示的 int 值。
注意:一个异常,String类型的值必须使用数字,否则会出现throw
NumberFormateException数字格式化异常。
例:
public class Integer类的构造方法 {
public static void main(String[] args) {
//定义一个int类型的变量;
int a = 100;
//使用Integer构造方法创建对象。
Integer b = new Integer(a);
System.out.println("b:"+b);//b:100
//构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值
Integer c = new Integer("123");
//Integer d = new Integer("asd");
// NumberFormatException 数字格式化异常。
System.out.println("c:"+c);//c:123
//System.out.println("d:"+d);
}
}
2. int和String相互转换
a. int——String:
i. 方法1:字符串拼接;
ii. 方法2:int--->Integer--->String
iii. 方法3:利用toString方法,
public static Sring toString(int i)返回一个表示指定的整数的String。
b. String——int:
i. 方法1:String--->Integer--->int
ii. 方法2:利用Integer类中的方法,
public static int parseInt(String)
例:
public class int类型和String类型相互转换 {
public static void main(String[] args) {
//int--->String;
//定义一个变量
int i = 100;
//方式 1,字符串拼接
String s = ""+i;
System.out.println(s);//100
System.out.println("——————");
//方式2,int -->Integer-->String;
Integer a = new Integer(i);
String c = a.toString();
System.out.println(c);//100
System.out.println("——————");
//方式3 public static String toString(int i) 返回一个表示指定的整数的String
String d = Integer.toString(i);
System.out.println(d);//100
System.out.println("——————");
//String --->int
//定义一个字符串:
String ii = "101";
//方式1 String--->Integer--->int;
Integer e = new Integer(ii);
int f = e.intValue();
System.out.println(f);//101
System.out.println("——————");
//方式2 Integer 类中的方法;public static int parseInt(String s)
int g =Integer.parseInt(ii);
System.out.println(g);//101
}
}
3. Integer的方法—进制转化
a. 十进制可以转换其他机制:二进制,8进制,16进制
public static String toBinaryString(int i):二进制
public static String toOctalString(int i):八进制
public static String toHexString(int i):十六进制
b. 十进制转换成其他进制
public static String toString(int i, int radix)
c. 其他进制转换10进制String s (s必须是数字字符串)
public static Integer valueOf(String s, int radix)
例:
public class 进制转换方法 {
public static void main(String[] args) {
System.out.println("100的二进制:"+Integer.toBinaryString(100));
System.out.println("100的八进制:"+Integer.toOctalString(100));
System.out.println("100的十六进制:"+Integer.toHexString(100));
System.out.println("——————————");
//十进制转换成其他进制
//public static String toString(int i, int radix)
System.out.println(Integer.toString(10, 2));
System.out.println(Integer.toString(15, 3));
System.out.println(Integer.toString(20, 6));
System.out.println("——————————");
//把其他进制的数转换成十进制
System.out.println(Integer.valueOf("100", 2));
System.out.println(Integer.valueOf("100", 8));
}
}
4. 常用的一个特性
JDK5.0以后:对于包装类有一个自动装箱和自动拆箱的功能
public static void main(String[] args) {
//定义一个Integer类型
//Integer i = new Integer(100) ;
Integer i = 100 ;//自动装箱:int类型--->封装了Integer类型
i+= 200 ;//i = i + 200 ;先是拆箱,将Integer转换int类型,做一个求和,完了又封装成Integer类型
System.out.println("i:"+i);
/**
* 通过反编译工具看原码:
* Integer i = Integer.valueOf(100); //自动装箱
i = Integer.valueOf(i.intValue() + 200);//括号内先拆箱:转换int,求和;括号外边:将int类型--->Integer类型:自动装箱
System.out.println((new StringBuilder("i:")).append(i).toString());
*
* */
5.BigInteger
public BigInteger add(BigInteger val)
public BigInteger subtract(BigInteger val)
public BigInteger multiply(BigInteger val)
public BigInteger divide(BigInteger val)可以让超出Integer类型的范围的数据进行计算
import java.math.BigInteger;
public class BigIntegerDemo {
public static void main(String[] args) {
//创建Integer对象
//Integer i = new Integer(100) ;
//System.out.println(i);
//获取Integer类型的最大值
System.out.println(Integer.MAX_VALUE);//2147483647
//Integer类型的构造方式:Integer(String str)
//java.lang.NumberFormatException:数字格式异常
//Integer i = new Integer("2147483648") ;
//System.out.println(i);
//java提供了:BigInteger
BigInteger bi = new BigInteger("2147483648") ;
System.out.println("bi:"+bi);
}
6.BigInteger的构造方法和常用的方法
public BigInteger(String val:数字字符串)
public BigInteger add(BigInteger val)
public BigInteger subtract(BigInteger val)
public BigInteger multiply(BigInteger val)
public BigInteger divide(BigInteger val)
public class BigIntegerDemo2 {
public static void main(String[] args) {
//创建两个BigInteger对象
BigInteger bi1 = new BigInteger("100") ;
BigInteger bi2 = new BigInteger("50") ;
//public BigInteger add(BigInteger val)
System.out.println("add:"+bi1.add(bi2));
//public BigInteger subtract(BigInteger val)
System.out.println("subtract:"+bi1.subtract(bi2));
//public BigInteger multiply(BigInteger val)
System.out.println("subtract:"+bi1.multiply(bi2));
//public BigInteger divide(BigInteger val)
System.out.println("divide:"+bi1.divide(bi2));
//public BigInteger[] divideAndRemainder(BigInteger val):返回的是商和余数
BigInteger[] bis = bi1.divideAndRemainder(bi2);
System.out.println("商为:"+bis[0]);
System.out.println("余数:"+bis[1]);
}
}