本帖最后由 fjl_fight 于 2013-5-5 12:08 编辑
1、八种基本数据类型及其封装类
所有的封装类都是final类,且覆写了Object类的hashCode(),equals(),toString()方法,且实现了 Comparable 接口
2、在JDK1.5之后提供了自动装箱(将基本数据类型变成相应的包装类)与自动拆箱(将包装类变成基本数据类型)。
如:- int a=10;
- //自动装箱
- Integer b=a;
- //自动拆箱
- int c=b;
复制代码 3、封装类提供类实用的数据类型之间的转换,提供提供提供了众多对数字以及字符串操作的方法。
相应公共函数说明:
Xxx表示封装类,xxx表示对应的基本数据类型。
- parseXxx(String s, int radix) Xxx表示封装类,将字符串s当成是 radix 进制数,并返回相应的十进制数
- parseXxx(String s)将字符串转换成相应的Xxx或xxx。
- xxxValue()将此Xxx对象的值作为基本xxx返回。
- toString()返回该类型的String对象
- toString(xxx b)返回一个表示指定xxx的 String 对象。
- valueOf(xxx b),返回一个表示指定 xxx的 Xxx实例。如:boolean a=Boolean.valueOf(true);
- valueOf(String s);返回一个用指定的字符串表示值的Xxx值,如:当且仅当s为true时返回true,boolean n=Boolean.valueOf("true");n=true;
- compareTo(Xxx anotherXxx)对两个Xxx 对象所表示的数值进行比较。
(1)Boolean
Boolean 类将基本类型为 boolean 的值包装在一个对象中。一个 Boolean 类型的对象只包含一个类型为 boolean 的字段。还为 boolean 和 String 的相互转换提供了许多方法,并提供了处理 boolean 时非常有用的其他一些常量和方法。- boolean c=Boolean.parseBoolean("xxx");
- System.out.println(c);//输出false
-
- System.out.println(c.toString());//输出c的String对象
-
- System.out.println(Boolean.toString(true));
-
- // 返回<span style="background-color: rgb(255, 255, 255); "> </span><font face="monospace" style="background-color: rgb(255, 255, 255); ">a</font><span style="background-color: rgb(255, 255, 255); ">的Boolean</span><span style="background-color: rgb(255, 255, 255); ">实例</span>
- boolean a=Boolean.valueOf(true);
- System.out.println(a);
- boolean n=Boolean.valueOf("false");
- System.out.println(n);
复制代码 (2)Byte
Byte 类将基本类型 byte 的值包装在一个对象中。一个 Byte 类型的对象只包含一个类型为 byte 的字段。还为 byte 和 String 的相互转换提供了几种方法,并提供了处理 byte 时非常有用的其他一些常量和方法。- Byte b=new Byte("127");
- //将此 <tt>Byte</tt>对象的值作为基本byte值返回。
- System.out.println(b.byteValue());
- //将100当成二进制数,并返回对应的十进制数
- System.out.println(Byte.parseByte("100",2));//返回4
复制代码 (3)Character
Character 类在对象中包装一个基本类型 char 的值。Character 类型的对象包含类型为 char 的单个字段。提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。
- char[] values={'*','7','p',' ','P','x'};
-
- for(char count:values){
-
- if(Character.isDigit(count)){
- System.out.println(count+"是一个数字");
- }else if(Character.isLetter(count)){
-
- System.out.println(count+"是一个字母");
- }else if(Character.isWhitespace(count)){
-
- System.out.println(count+"是一个空格");
-
- }else if(Character.isUpperCase(count)){
- System.out.println(count+"是大写形式");
-
- }else if(Character.isLowerCase(count)){
- System.out.println(count+"是小写形式");
-
- }else if(Character.isUnicodeIdentifierStart(count)){
- System.out.println(count+"是unicode"+"标示符的第一个有效字母");
-
- }
- }
复制代码 (4)Double
Double 类在对象中包装一个基本类型 double 的值。每个 Double 类型的对象都包含一个 double 类型的字段。还提供多个方法,可以将 double 转换为 String,将 String 转换为 double,也提供了其他一些处理 double 时有用的常量和方法。
如:
Double d=14.5;
//将12.5转换成16进制
String Hexstring=Double.toHexString(12.5);
//输出0x1.9p3
System.out.println(Hexstring);
//将d转换成int值
int value=d.intValue();
System.out.println(value);//输出14
double d1=Double.parseDouble("12");
System.out.println(d1);//12- <blockquote><span class="Apple-tab-span" style="white-space:pre"> </span>Double d=14.5;
复制代码 (5)Float
Float 类在对象中包装一个基本类型 float 的值。Float 类型的对象包含一个 float 类型的字段。提供了几种方法,可将 float 类型与 String 类型互相转换,还提供了处理 float 类型时非常有用的其他一些常量和方法。
用法跟Double类似,这里就不详细介绍了。
(6)Integer
Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法。
如:
//将10转换成二进制
String binary=Integer.toBinaryString(10);
//将31转换成十六进制
String hex=Integer.toHexString(31);
//将10转换成八进制
String octal=Integer.toOctalString(10);
//将字符串122装换成int型
int value=Integer.parseInt("122");
System.out.println(binary);//1010
System.out.println(hex);//1f
System.out.println(octal);//12
System.out.println(value);//122(7)Long
Long 类在对象中包装了基本类型 long 的值。每个 Long 类型的对象都包含一个 long 类型的字段。提供了多个方法,可以将 long 转换为 String,将 String 转换为 long,除此之外,还提供了其他一些处理 long 时有用的常量和方法。
用法跟Integer类似,就不做详细介绍了
(8)short
Short 类在对象中包装基本类型 short 的值。一个 Short 类型的对象只包含一个 short 类型的字段。提供了多个方法,可以将 short 转换为 String,将 String 转换为 short,同时还提供了其他一些处理 short 时有用的常量和方法。
跟Integer用法类似
|