数据类型、变量、数组类

简介:  感言:JAVA是一种强类型语言,JAVA的安全性和健状有部分来源与此,JAVA区分大小写。定义数据的时候可以有两种写法。(先声明变量)double num11; (不预先定义,直接上,学名叫“动态初始化”)floatnum = (float)1.

 

感言:JAVA是一种强类型语言,JAVA的安全性和健状有部分来源与此,JAVA区分大小写。定义数据的时候可以有两种写法。

(先声明变量)double num11;

 (不预先定义,直接上,学名叫“动态初始化”)float num = (float)1.3666222222222222222222222;

也可以这样float num = 1.3666222222222222222222222f;

  num11 = 1.36662222222222222222222222222222222222222222

 

数据类型分基本类型和引用类型,基本类型无需NEW,只要声明就可以创建 int data = 10,基本类型的运行速度快,是因为基本类型创建的并不是一个引用的“自动”变量,这个变量直接存储“值”,并置于“堆栈”中(我在另一本关于虚拟机的书上看到的却是说存在“寄存器”中,无论是在哪,肯定都比引用类型要高效是肯定的),JAVA中基本类型的存储空间是固定不变的,见表。

 

引用类型需要用NEW来开创一个空间 new string = "im new data",NEW将对象存于“堆”中

 

八大基本类型:

基本类型

最小值

大小

最大值

包装器类型

默认值

boolena

-

-

Boolean

false

Char

Unicode 0

16-bit

Unicode 2(16次)-1

Character

‘\u0000’

Byte

-128

8 bits

+127

Byte

(byte)0

Short

-2(15次)

16 bits

+2(125次)-1

Short

(short)0

Int

-2(31次)

32 bits

+2(31次)-1

Integer

0

Long

-2(63次)

64 bits

+2(63次)-1

Long

0L

Float

Ieee754

32 bits

Ieee754

Float

0.0f

Double

Ieee754

64 bits

Ieee754

Double

0.0d

  

基本类型为什么要有包装类型,因为包装类可以在堆中创建一个非基本对象,用来表示对应的基本类型。如下:

char c = 'x';

Character ch = new Character();

也可以这样

Character ch = new Character('x');

1.5以上的自动拆装箱功能可以直接:Character ch = 's';并可以反向转换  char c = ch;

 

 

在实际的使用中,基本类型和包装因型有什么用呢?我一直想不太明白,后来总结了一下,大致归于下:

比如(int,Integer)
int 是基本类型。

Integer是引用类型。。

比如int a= 5;
Integer b = 5

对于a你只能用来做计算。。比如加减乘除。。

b你可以用来做很多事情,因为他是一个对象,他有很多方法,你可以像使用String对象那样使用它。

  int   一般做为数值参数就够了  
  integer   一般做类型转换的时候用的较

 

基本类型和引用类型的区别还于作用域

{

int = 10;

}
变量的作用域只可用于域结束之前

 

{

String s = new String("aaa");

}

引用S在作用域终点就消失了,然而,S指向的的string对象仍继续占据内存空间。由NEW创建的对象,会一直存在下去,当然了,有垃圾回收器在监视的它,有必要的时候会把它删除。

1整型

(字节型,宽度8)Byte,(短整型,宽度16)short,(整型,宽度32)int,(长整型,宽度64)long

细节:

1.     只要整数表达式包含byte,short,int.整个表达式会被提升为int类型

2.     类型决定行为,决定系统怎么去处理它,而不是大小。

 

 

2浮点

(单精度,位宽32)Float(最多显示小数点后7位),(双精度,位宽64)double(最多显示小数点后16位),

 

他们其实差不多,都可以表示小数但有一定区别

1.     FLOAT的占用空间只有DOUBLE的一半,当值很大或很小时,会变的不精确。

2.     超越函数,如SIN(),COS()等,返回都是DOUBLE

 

3字符

在JAVA中,CHAR是用来存储字符数据的。用Unicode来表示字符。

 

CHAR和String的区别:

原始数据类型(也称基本数据类型)(primitive data type):byte,short, char, int, long,float,double,boolean. 一共8种

对象(也称引用类型)(Object):8中除外的都是对象,包括数组。

 

显然char属于基本数据类型(即原始数据类型),string属于对象

 

4布尔型

BOOLEAN的值只有真假。它有一个特点,它可以控制条件表达式。也就是说可以写成IF(true)

感言:JAVA是一种强类型语言,JAVA的安全性和健状有部分来源与此,JAVA区分大小写。定义数据的时候可以有两种写法。

(先声明变量)double num11;

 (不预先定义,直接上,学名叫“动态初始化”)float num = (float)1.3666222222222222222222222;

也可以这样float num = 1.3666222222222222222222222f;

  num11 = 1.36662222222222222222222222222222222222222222

 

 

5.变量

变量可以预先声明,如:

int a,b;

也可以

int a =1,b=3;

 

 

也可以在程序中需要使用的时候进行动态声明,从程序性能上来说,后期动态声明更符合优化的目标。

 

变量声明可以使用常量,当然也可以使用表达式。如 double a = Math.sqrt(a*a+b*b);

 

 

6.数组

 

一:数组可以看成是多个相同类型的数据集合

二:数组变量属于引用类型,数组也可以看成是对象,数组中的每一个元素相当于该对象的成员变量

三: 数组中的元素可以是任何数据类型,包括基本类型和引用类型。(除了基本类型以外,其它的全是引用类型)

 

建立一个数组 new type var[]

目录
相关文章
|
7月前
|
存储 机器学习/深度学习 Java
Java数组的定义和使用(一篇带你搞定数组)
Java数组的定义和使用(一篇带你搞定数组)
179 0
|
4月前
|
存储 算法 编译器
C++002-C++变量和数据类型1
C++002-C++变量和数据类型1
C++002-C++变量和数据类型1
|
4月前
|
存储 算法 编译器
C++003-C++变量和数据类型2
C++003-C++变量和数据类型2
|
9月前
|
C#
【C#视频】常量、枚举、结构体、数组
【C#视频】常量、枚举、结构体、数组
|
存储 Oracle Java
数据类型与变量
数据类型与变量
65 0
C中常量数组不能修改
C中常量数组不能修改
58 0
|
C语言 C++
不同类型的变量与零究竟是如何比较(1)
不同类型的变量与零究竟是如何比较
84 0
不同类型的变量与零究竟是如何比较(1)
|
存储 编译器
不同类型的变量与零究竟是如何比较(2)
不同类型的变量与零究竟是如何比较
89 0
不同类型的变量与零究竟是如何比较(2)
|
C语言
【C 语言】数组 ( 数组类型表达 | 定义数组类型 )
【C 语言】数组 ( 数组类型表达 | 定义数组类型 )
154 0
【C 语言】数组 ( 数组类型表达 | 定义数组类型 )