当前位置:网站首页 > Java基础 > 正文

java基础数据类型及封装类



1)基本数据类型
Java的基本数据类型有8种,包括byte,char,short,int,long,double,float,boolean。
基本数据类型是基于数值的,因此它并没有类的概念,这一思想与Java是纯面向对象语言这一特点相违背,但是依旧没有将基本数据类型舍弃。
对于基本数据类型明显的优点就是:
<1>存储的是具体数值,没有操作数据的方法,占用的内存空间小;
<2>存储位置是在栈的局部变量表中,并且存储的是具体数值,有更高的性能。
当然,缺点也是显而易见的,就是没有操作数据的方法。
2)包装类
每种基本数据类型都对应一种包装类型。



3)具体行为细节(Integer)
构造方法:



对于构造一个Integer类型的对象还可以使用下面的方法,但是其与使用new构造的是有区别的:


<1>首先int 与Integer比较Integer会先自动拆箱为int,然后比较


<2>Integer与Integer比较,如果是通过int来创建的,在-128~127范围内是相等的,在范围外是不等的;如果是通过new 出来的则一定不相等(两个不同的对象,不可能相等的)。
因为对于通过int来的Integer对象实际是通过使用valueOf(int i)方法的,而valueOf(int i)中使用到Integer的缓存策略。对于-128 ~ 127内的值在创建Integer对象时候是存放在缓冲区的,当又有Integer创建该对象时候,则直接使用缓冲区里的。而对于范围外的使用int则是通过new一个对象创建的,所以对于int而来的Integer在-128 ~ 127两侧是有区别的


<3>Integer与Integer比较,通过int与new方法时候,都是不相等的,首先在范围内,int是直接存放在缓冲区而new是新建了一个对象,肯定不相等的,而范围外,则都是通过new对象新建的,也一定不相等。


parseInt(s,10);是将字符串s解析成指定参数(这里是10,也就是十进制)的进制,也就是按照指定进制解析字符串,解析成的是十进制的数,下面是源码:


Integer中的常量:


常用方法:
String toString():返回字符串类型的表示该Integer对象


String toString(int i):将i按照十进制转成字符串


getChars(int i, int index, char[] buf):
将表示整数i的字符放入字符数组buf中。字符从指定索引处的最低有效数字(不包括)开始向后放入缓冲区,并从那里向后工作。(api中解释)。应该就是将指定的数i装进字符数组buf中。


String toString(int i,int radix):将i按照radix指定的进制转成字符串


对于常用的进制转化有以下方法:
转二进制:


转十六进制


转八进制


valueOf(String s ,int redix):将指定字符串按照指定进制的Integer类型的数


valueOf(int i):将i转成Integer类型实例


valueOf(String s):指定字符串转成十进制Integer类型实例

java基础数据类型及封装类

parseInt()与valueOf()的区别:
<1>两者都是将字符串转成"整型";
<2>parseInt()是转成int类型的,而valueOf()是转成Integer类型的,在valueOf()方法中就使用到了parseInt()方法,然后再进行装箱操作。

版权声明


相关文章:

  • springboot需要java基础吗2024-10-15 10:58:06
  • java基础核心类2024-10-15 10:58:06
  • java注解入门基础2024-10-15 10:58:06
  • 学完java基础后去刷leetcode2024-10-15 10:58:06
  • java需要基础ppt课件2024-10-15 10:58:06
  • java扎实基础笔试题2024-10-15 10:58:06
  • java基础常量有哪些2024-10-15 10:58:06
  • java基础面试3年2024-10-15 10:58:06
  • 有vc基础学java2024-10-15 10:58:06
  • java基础常用包2024-10-15 10:58:06