问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

JAVA的基本数据类型和引用数据类型的区别

发布网友 发布时间:2022-04-19 23:36

我来回答

5个回答

热心网友 时间:2022-04-22 15:49

一、作用的不同

1、引用类型一般都是通过new关键字创建对象,然后把这个对象赋予给相应的变量,最常用的引用类型是String类型,它也比较特殊,可以直接通过关键字new来创建对象,也可以通过字符串直接赋值,比如:

Strings=newString("abc");

Strings="abc";

2、基本类型就是直接赋值就可以了,比如:

inta=123;

floatb=123.0;

boolean=true;

二、参数方面传递的不同

引用类型是引用传递

基本类型是值传递

三、比较方面的不同

引用类型比较的是引用地址(没有重写equals方法)

基本类型比较的是值

五、类型的不同

1、引用类型分为四种

强引用(StrongReference)

软引用(SoftRefernce)

弱引用(WeakReference)

虚引用(PhantomReference)

强引用-StrongReference

2、八种基本类型

整型byte8位

整型short16位

整型int32位

整型long64位

浮点型float32位

浮点型double64位

字符型char16位

布尔型boolean位数不确定

热心网友 时间:2022-04-22 17:07

JAVA的基本数据类型和引用数据类型的区别:

1、基本数据类型有:byte:Java中最小的数据类型;short:短整型;int:整型;long:长整型;float:浮点型;double:双精度浮点型;char:字符型;boolean:布尔类型。

引用数据类型有:类、接口类型、数组类型、枚举类型、注解类型。

2、基本数据类型在被创建时,在栈上给其划分一块内存,将数值直接存储在栈上。

而引用数据类型在被创建时,首先要在栈上给其引用(句柄)分配一块内存,而对象的具体信息都存储在堆内存上,然后由栈上面的引用指向堆中对象的地址。

3、在数据做为参数传递的时候,基本数据类型是值传递,而引用数据类型是引用传递(地址传递)。

热心网友 时间:2022-04-22 18:41

java中的数据类型分为两大类:基本数据类型和引用数据类型

基本数据类型,包括数值型,字符型和布尔型。

数值型:1)整型:byte 1个字节;short 2个字节;int 4个字节;long 8个字节。

2)浮点型:float 4个字节;double
8个字节;可以采用十进制和十六进制两种表示方式,其中十六进制表示方法只能采用科学计数法,例如:0x1.2p3,表示的是的是1乘以16加上2乘以16的-1次方的和乘以2的三次方;浮点型的默认类型为DOUBLE型,如果声明float型浮点数,要在数值后面加上f或F,例如:float
f1 = 3.14F;否则会报精度错误。

字符型:char 采用unicod的16位编码方式进行编码。

布尔型:true,false;

引用数据类型:类、接口类型、数组类型、枚举类型、注解类型;

基本数据类型和引用数据类型的区别主要在存储方式上:

基本数据类型在被创建时,在栈上给其划分一块内存,将数值直接存储在栈上;

引用数据类型在被床架时,首先要在栈上给其引用(句柄)分配一块内存,而对象的具体信息都存储在堆内存上,然后由栈上面的引用指向堆中对象的地址。

例如:我有一个类MyDate,其中有属性day,mouth,year等,有构造方法(带参数);

现在为其创建一个对象MyDate d1 = new
MyDate(8,8,2008);

在内存中的具体创建过程是:

1)首先在栈内存中位其d1分配一块空间;

2)然后在堆内存中为MyDate对象分配一块空间,并为其三个属性设初值0,0,0;

3)根据类MyDate中对属性的定义,为该对象的三个属性进行赋值操作;

4)调用构造方法,为三个属性赋值为8,8,2008;(注意这个时候d1与MyDate对象之间还没有建立联系)

5)将MyDate对象在堆内存中的地址,赋值给栈中的d1;通过句柄d1可以找到堆中对象的具体信息。

呵呵,引用数据类型的创建还真是挺复杂的一个过程。。。

热心网友 时间:2022-04-22 20:33

java的8种基本类型:
byte,short, char, int, long,float,double,boolean.
与此对应的,java提供了8种包装类型:
Byte,Short,Character,Integer,Long,Float,Double,Boolean.
它们之间的相互转换:例如:
double a=1;
//把double基本类型转换为Double包装类型
Double b=new Double(a);
//把Double包装类型转换为double基本类型
a=b.doubleValue();

所谓引用,就是指针了,就是说对象指向的不是数据本身,而是它所在的内存地址.
数组就是引用类型!
一般在传参的时候用的最多。

热心网友 时间:2022-04-22 22:41

数据类型在计算机语言里面,是对内存位置的一个抽象表达方式,可以理解为针对内存的一种抽象的表达方式。接触每种语言的时候,都会存在数据类型的认识,有复杂的、简单的,各种数据类型都需要在学习初期去了解,Java是强类型语言,所以Java对于数据类型的规范会相对严格。
数据类型是语言的抽象原子概念,可以说是语言中基本的单元定义,Java语言提供了八种基本类型。六种数字类型(四个整数型(默认是int 型),两个浮点型(默认是double 型)),一种字符类型,还有一种布尔型。

一、整数类型:
byte、short、int、long都是表示整数的,只不过他们的取值范围不一样。
1、byte:
byte数据类型是8位、有符号的,以二进制补码表示的整数;(256个数字),占1字节。最小值是-128(-2^7);最大值是127(2^7-1);默认值是0;
byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一;
例子:byte a = 100,byte b = -50。
2、short:
short数据类型是16位、有符号的以二进制补码表示的整数,占2字节。最小值是-32768(-2^15);最大值是32767(2^15 - 1);
Short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一;
默认值是0;
例子:short s = 1000,short r = -20000。
3、int:
int数据类型是32位、有符号的以二进制补码表示的整数;占3字节。最小值是-2,147,483,648(-2^31);最大值是2,147,485,647(2^31 - 1);一般地整型变量默认为int类型;默认值是0;
例子:int a = 100000, int b = -200000。
4、long:
long数据类型是64位、有符号的以二进制补码表示的整数;占4字节。最小值是-9,223,372,036,854,775,808(-2^63);最大值是9,223,372,036,854,775,807(2^63 -1);这种类型主要使用在需要比较大整数的系统上;默认值是0L。
可以看到byte和short的取值范围比较小,而long的取值范围太大,占用的空间多,基本上int可以满足我们的日常的计算了,而且int也是使用的最多的整型类型了。在通常情况下,如果JAVA中出现了一个整数数字比如35,那么这个数字就是int型的,如果我们希望它是byte型的,可以在数据后加上大写的 B:35B,表示它是byte型的,同样的35S表示short型,35L表示long型的,表示int我们可以什么都不用加,但是如果要表示long型的,就一定要在数据后面加“L”。
二、浮点型:
浮点型包括单精度浮点型(float)和双精度浮点型(double)。double型比float型存储范围更大,精度更高,所以通常的浮点型的数据在不声明的情况下都是double型的。
1、float (单精度浮点型)
一个float 32位,占用4个字节,例3.2F,默认是0.0f, 3.402823e+38 ~1.401298e-45(e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方)。
2、double (双精度浮点型)
一个dobule 64位 占用8个字节,例3.2,默认是0.0, 1.797693e+308~4.9000000e-324 占用8个字节
boolean:
boolean数据类型表示一位的信息;
只有两个取值:true和false;
这种类型只作为一种标志来记录true/false情况;
默认值是false;
例子:boolean one = true。
三、字符型
char:字符型,用于存储单个字符,占16位,即2个字节,取值范围0~65535,默认值为空。
四、布尔型
boolean:布尔类型,占1个字节,用于判断真或假(仅有两个值,即true、false),默认值false。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
找专业防水队做完还漏水怎么维权 法院会受理房屋漏水造成的纠纷吗? 巴西龟最长活多久,家养!!! 养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 java有几种数据类型 java语言的所有数据类型分为哪几种? JAVA程序中的数据类型分为哪两种()和() 罗技MK270的介绍 罗技mk345 mk275哪个好 罗技罗技 mk250键鼠套装 与mk270键鼠套装哪个更好?感谢 人力资源部门都是干啥的? 人力资源部职责,主要做些什么? 人力资源和社会保障部都做什么? 人力资源管理部门是干什么的? 人力资源部是干什么的 人力资源部应该是干些什么工作的? 人力资源部门是干什么的 人力资源部是做什么的? 一个公司里,人力资源部主要是干什么的? 人力资源部主要工作是什么? 人力资源部的职能是什么 人资部是做什么的? 向别人介绍一种自己喜欢的小动物吧 怎么用说明方法介绍小动物? JAVA中数据类型有几种,请举例说明 java的基本数据类型有哪些 java八大数基本据类型分别是什么? Java中数据类型有哪几类呢? java中的数据类型有哪些 java中常用的数据类型有哪些 java的基本数据类型是什么?为什么? java语言的所有数据类型有哪些? Java的基本数据类型有哪些? java基本数据类型有哪些? java有几种基本数据类型? Java-基本数据类型有哪几个 JAVA语言的数据类型分为? java中的基本数据类型有几种 初学者之Java基本数据类型都有什么呢? 蚕丝被芯脏了怎么洗步骤 丝棉被怎么清洗? 蚕丝被能洗吗,怎么保养啊? 蚕丝被弄脏了怎么洗? 请问蚕丝被能用水洗吗?应该怎么清洗?