java中八种基本数据类型想必大家都非常熟知,八种基本数据类型都是非常常用的。但是在java的基本数据类型之外,除了String类型之外其他七种数据类型都具有其包装类。那为什么java会给这七种数据类型设置包装类而不给String设置包装类呢?意义何在?
我们都知道在八种基本数据类型中String是比较特殊的一位了,为什么说它特殊,因为String是对象类型,其值存在于堆内存中,String类型的数据有自己的各种各样的方法,它是用地址保存的,而其他其中基本数据类型则是保存在栈内存中,只有被引用的作用。这也是为什么java给其他其中基本数据类型设置一个包装类而不用给String类型设置包装类的原因。①七种基本数据类型拥有相应的方法,基本数据类型是不能调用方法的,而包装类则可以②每一个包装类就是一个对象,java是面向对象编程,所以有了包装类,则让每种基本数据类型也有了面向对象的特征,这样我们就可以用操作对象的方式来操作基本数据类型③String也可以说成是他自身的包装类,但是这种说法不太严谨,而且它比较特殊,比如取值的时候,比较的时候。
基本数据类型对应的包装类
int==>Integer byte==>Byte double==>Double float==>Float short==>Short char==>Character boolean==>Boolean包装类包括了两大基本方法以及一些基本特性特性: 1.将本类型和其他数据类型相互转换的方法。 2.将字符串和本数据类型相互转换的方法
基本数据类型跟包装类的特性 上面提到包装类跟基本数据类型可以相互转换,java为了方便,提供了自动拆箱装箱的功能。
<span style="font-size:18px;">int i=8;</span>
</pre><pre name="code" class="java"><span style="font-size:18px;">Integer a=new Integer(i);//手动装箱</span>
</pre><pre name="code" class="java"><span style="font-size:18px;"><pre name="code" class="java">Integer a=i;//自动装箱</span>
</pre><pre name="code" class="java"><span style="font-size:18px;">Integer b=new Integer(10);</span>
<span style="font-size:18px;">int c=b.intValue();//手动拆箱</span>
<span style="font-size:18px;">int c=b;//自动拆箱</span>
</pre><pre name="code" class="java">
java中基本类型和字符串之间的转换 在实际的开发过程中,我们会经常用到基本数据类型跟字符串的相互转换,那么字符串与基本数据类型相互转换的方法都有哪些呢? 将基本数据类型转换成相应的字符串类型有三种方法: 1.使用包装类的toString方法。 2.使用字符串的valueOf方法 3.在基本数据类型后面加一个空的字符串。 例子:
<span style="font-size:18px;">int c=10;再来看将String类型转换成字符串的方法: 1.调用包装类的parseXxx方法; 2.调用包装类的valueOf方法,会自动拆箱; 例子:
String str1=Integer.toString(c);
String str2=String.valueOf(c);
String str3=c+"";</span>
String str="abc";
int i=Integer.parseInt(str);
int j=Integer.valueOf(str);