一、数据类型
1.思维导图
【说明】
**基本数据类型:这种类型 定义的变量 里面存的是数值。 **
引用数据类型:这种类型 定义的变量 里面存的是地址。
2.数据类型
【说明】不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节【这说明JAVA的可移植性强】
二、变量
1.思维导图
【说明】
局部变量:是 方法内部的变量。
成员变量:这个是在 类与对象的部分 才介绍到,现在在这里先不做具体介绍。
2.JAVA稍微区别于C语言中的语法规定
2.1 基本数据类型
2.1.1 整型变量
- JAVA中局部变量一定要初始化,才能编译通过。
- 在定义变量的时候,一定要使用之前初始化;如果在使用之后才初始化,也会编译不通过。
- 注意各类型的取值范围,以int为例,其他的也是差不多。
- 可以用 包装类 来打印出各变量所能打印的范围。
- 一般定义长整型 long 的时候,在右值上需要加一个L,以表示当前的值是一个长整型的值;如果不加的话,会默认int类型的数据。
- 升级版也可以用基础版的功能。
- JAVA相当于C语言引入了一个新的数据类型 byte(只占1个字节,8个比特位,取值范围是 -2^7 ~ (2^7)-1,即-128~127)。
- JAVA非常安全,和C不一样,它会自动检测 赋值的字面值常量是否在 所规定的类型的范围里面的。超过范围以后,他就会报错了。当然,强制类型转换可以。
2.1.2 浮点型变量
- 在定义浮点型的时候,右值会默认是 double 类型的数据,我们需要在右值加上 f 使其变成float 类型的数据。
- 在C语言、JAVA里面,对于小数来说,整个程序都没有一个精确的数字。
2.1.3 字符型变量
特别注意的是,JAVA里面的字符类型char 是2个字节。
【注意】由于char是一个字符型数据,每一个字符都会对应一个整数数字,如‘a’对应97,所以对应的数字一定是一个整数而不是负数。
【说明】
- 计算机中的字符本质上是一个整数。 在 C 语言中使用 ASCII 表示字符,而 Java 中使用 Unicode 表示字符。 因此一个字符占用两个字节, 表示的字符种类更多, 包括中文。
- ** char的包装类型为Character。**
2.1.4 布尔类型
- 在JAVA中,boolean只能有两个取值(true和false),没有所谓的 0是假,非0是真。
- 在JAVA中,if的条件必须是一个布尔表达式(是一个表达式)。
**【注意】JVM当中,boolean没有明确给定大小,但说起boolean数组,会被JVM识别为字节数组,其包装类型是Boolean。 **
三、类型转换
在Java中,当**参与运算数据类型不一致**时,就会进行类型转换。Java中类型转换主要分为两类:**自动类型转换****(隐式****)** 和 **强制类型转换(****显式)。**
3.1 自动类型转换(隐式)
内容:代码不需要经过任何处理,在代码编译时,编译器会自动进行处理。
特点:数据范围小的 转为数据范围大的 时候会自动进行。如果是范围大的 转为范围小的,编译会出现问题(如果这时候想要编译通过,那就得需要 强制类型转换)。
3.2 强制类型转换(显示)
强制类型转换:当进行操作时,代码需要经过一定的格式处理,不能自动完成。
**特点:数据范围大的到数据范围小的。 **
【注意】
- 不同数字类型的变量之间赋值, 表示范围更小的类型能隐式转换成范围较大的类型 ;
- 如果需要把范围大的类型赋值给范围小的, 需要强制类型转换, 但是可能精度丢失 ;
- 将一个字面值常量进行赋值的时候, Java 会自动针对数字范围进行检查;
- 强制类型转换不一定能成功,不相干的类型不能互相转换。
3.3 类型提升
**内容:不同类型的数据之间相互运算时,数据类型小的会被提升到数据类型大的。 **
1.int与long之间:int会被提升为long
**2.byte与byte的运算 **
【结论】所有小于4个字节的元素(byte、short),运算的时候,都会提升为4个字节(int类型),然后才会进行运算 。
四、字符串类型
在C语言中是没有字符串类型的,而在JAVA中是存在的。
现在只是说一下简单的应用,以后会有更加详细的介绍。
1.拼接
2.int 转成 String
** 3.String 转成 int **
总结
这一话的需要知道的内容就这么多了,
如果有啥不到位的地方欢迎指出来,大家互相督促、共同进步啊。
当然啦如果铁铁们可以一键三连那就更棒了,特别特别感谢 ୧(๑•̀⌄•́๑)૭ 。
** **
版权归原作者 星海可沉鱼 所有, 如有侵权,请联系我们删除。