包装类:
需求1:有100这个数据,计算出它的二进制、八进制、十六进制;
需求2:如何用代码求出int类型数据范围;
为了对基本数据类型进行更多的操作,更方便的操作,Java就针对每一个数据类型提供了一个对应类类型;
数据类型 | |
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
public class PackageClassDemo1 { public static void main(String[] args) { //Integer: Integer类包装一个对象中的原始类型int的值。 //public static String toBinaryString(int i)在基数2中返回整数参数的字符串表示形式为无符号整数。 //求出int类型数据的二进制 String s = Integer.toBinaryString(100); System.out.println("100的二进制为:" + s); //static String toHexString(int i) //返回整数参数的字符串表示形式,作为16位中的无符号整数。 String s1 = Integer.toHexString(100); System.out.println("100的十六进制为:" + s1); //static String toOctalString(int i) //在基数8中返回整数参数的字符串表示形式为无符号整数。 String s2 = Integer.toOctalString(100); System.out.println("100的八进制为:" + s2); //如何使用代码求出int类型数据范围 //static int MAX_VALUE //一个持有最大值一个 int可以有2 31 -1。 int maxValue = Integer.MAX_VALUE; //static int MIN_VALUE //的常量保持的最小值的 int可以具有,-2 31。 int minValue = Integer.MIN_VALUE; System.out.println("int类型数据的最大值为:" + maxValue); System.out.println("int类型数据的最小值为:" + minValue); } }
int类型的数据与String类型做互相转换;
int --String
static String valueof(int i)返回int参数的字符串int形式;
String -- Integer -- int
public static int perseInt(String s)将字符串参数解析为带符号的十进制整数
public class PackageClassDemo2 { public static void main(String[] args) { //int -- String int num = 100; //方式1:static String valueOf(int i) 返回 int参数的字符串 int形式。 String s = String.valueOf(num); // 100 -->"100" System.out.println(s); System.out.println("=================================="); //方式2:int -- Integer -- String // String string = new String(num); //Integer(int value) 构造一个新分配的 Integer对象,该对象表示指定的 int值。 Integer integer = new Integer(num); System.out.println(integer); // Integer重写了toString方法 String s1 = integer.toString(); System.out.println(s1); //方式3:字符串拼接 String s2 = ""+num; System.out.println(s2); //方式4:public static String toString(int i) String s3 = Integer.toString(100); System.out.println(s3); System.out.println("=========================="); //String-->int String s4 = "200"; // String s4 = "你好"; //方式1:String--Integer--int //Integer(String s) //构造一个新分配 Integer对象,表示 int由指示值 String参数。 Integer integer1 = new Integer(s4); System.out.println(integer1); //public int intValue()将 Integer的值作为 int 。 int number = integer1.intValue(); System.out.println(number); int i = integer1; //在包装类中称之为自动拆箱 Integer i2 = 300; //在包装类中称之为自动装箱 } }
public class ArraysDemo { public static void main(String[] args) { //定义一个数组 int[] arr = {21, 32, 44, 1, 4, 89, 16}; //public static String toString(int[] a) //将数组转换成一个字符串 // System.out.println(arr); String s = Arrays.toString(arr); System.out.println(s); System.out.println("================================="); //public static void sort(int[] a) Arrays.sort(arr); System.out.println("排序后的数组为:" + Arrays.toString(arr)); System.out.println("================================="); //public static int binarySearch(int[] a,int key) //[1, 4, 16, 21, 32, 44, 89] //二分查找的前提是数组本身是排过序的 System.out.println("二分查找32:" + Arrays.binarySearch(arr, 32)); System.out.println("二分查找32:" + Arrays.binarySearch(arr, 100)); // -8 } }