##java数据类型
java中的变量
-
概念
变量是在java中使用有可能改变的的量,存储你想要存储的值,向计算机申请存储空间,你可以想象变量是一个杯子,杯子里可以装水,可以装牛奶,可以装逼等等。
-
变量的组成
变量是由数据类型,变量名,变量值三部分组成的。
组成的结构如下:
数据类型 变量名 = 变量值;
int a = 10;
这是一个简单的代码例子,int 为数据类型 ,a为变量名,10为变量值,a等于10,在java代码编译过程中,你也许有添加了a = 20;
的操作,那么a的值变为了20,a就是那个杯子,20就是杯子里面装的东西,有可能在使用过程中值被你更改了。 -
示例代码
public class Test{ public static void main(String[] args){ int a = 10; Systeam.out.print("a的值:"+ a); a = 20; Systeam.out.print("a的值:"+ a); } }
变量的基本认识就到这里了,下面介绍下数据类型。
数据类型
-
数据类型是干嘛用的呢?
数据类型是区分变量的存储空间中值类型,就像玩游戏,选择职业剑客,法师,刺客等等,数据类型你可以想象是职业,但是它是存储数据的,区分存储的是什么数据。就像选择剑客,就会有剑客导师,剑客就要去剑客学习技能,其他职业的就不能学习剑客的技能。
-
数据类型分类
数据类型分为基本数据类型(别名:简单数据类型)与引用类型,基本数据类型又分为其它小模块,具体看下图:
-
基本数据类型
基本数据类型是java中的八大基础数据类型,下图是是它的范围值:
注意:1字节是8bit,一个字符是2字节,一个汉字占2字符,4字节
-
基本数据类型的使用
byte a = 1; char b = 95; short c = 1; int d = 1; long e = 1L; float f = 2.0F; double h = 2.0;
注意:1、long类型的变量值要加L或者l;float类型的变量值要加F或者f
2、注意内存溢出,变量值过大,超过了数据类型的存储范围,例如:
byte a = 500;
System.out.println(a);
byte的存储范围是 -128~127,存储的数据超过了这个区间,就会造成存储溢出,也就是内存溢出(专业名称)
###标识符的名命规则
1.原理
命名规则都有不成文的规定,就像人出生有名字一样,有姓与名,标识符命名规则也是一样,也有自己的命名规范,叫做大驼峰和小驼峰,为什么呢,你自己看看骆驼的背部图片就知道了。取的名字要尽量见名知意,也可以加注解解释该标识符含义。
2.驼峰命名的规则:
- 小驼峰:首个单词的首字母小写,后续单词首字母大写
- 大驼峰:单词首字母大写
3.标识符的可取范围
- 可以用数字,字母,下划线,$组成
- 不可以是关键字
- 不可以用数字开头
注意:不要用中文,为什么呢,因为计算机处理英文能力高于中文,而且一个中文占4个字节,存储空间没有那么大
4.命名规范:
- 变量名:尽量使用名词,使用小驼峰
//正确命名
String name = "爱你哟";
String schoolName = "黄平名族";
//错误命名 未见名知意
String a = "来了老弟";
//错误命名 关键字
String void = "来了老妹";
- 类名:尽量使用名词,使用大驼峰
//正确命名
public class Test(){}
public class StudentBean(){}
//错误命名
public class test(){}
- 接口名:尽量使用动词,使用大驼峰
//正确命名
public Interface UserServer(){}
public Interface Lean(){}
//错误命名
public Interface lean(){}
- 方法名:尽量使用动词,使用小驼峰
//正确命名
public void getName(){}
public void get(){}
//错误命名
pulic void GetName(){}
- 常量名:所有单词大写
//正确命名
public final String NAME = "爱你呦";
//错误命名
public final String name = "爱你呦";
- Java中的关键字
数据类型转换
1、数据类型转换是干嘛用的?
数据类型转换就是把不是我们想要的数据类型变为我们需要的数据类型,就像原始社会 ‘以物换物’ 的原则,换取我们想要的东西,可以存在交换的
2、数据类型转换图由小到大
byte —> short,char —> int —> long—> float —> double
注意:boolean类型不能参与转换
3、隐式转换
原理:小杯装的水能用大杯装得下
原则:大吃小,小被吃,用数据范围大的装取小的数据
byte number = 1;
int numberMax = number;//隐式转换
4、显式转换(也称:强制转换)
原理:大杯装的水用小杯装
原则:小装大有溢出,小的装大的有可能有数据溢出,也就是超过数据存储范围
//正确转换
int number = 1;
byte number1 = (byte)number;//强制转换
//错误转换
int number = 128;
byte number1 = (byte)number;//强制转换,内存溢出,byte最大存储127
注意:两方低于int类型的数据类型相操作,得到的结果是int类型的,有一方高于int类型的,得到的结果是高于int类型的一方,两方都高于int类型的,取最高的一方。
byte a = 1;
byte b = 2;
int c = a + b;
//当数据类型与常量做操作,而不是赋值,常量默认是int类型
int a = a + 1;
float d = a + 0.0f;