在我们学习一门编程语言时,最先要了解的就是数据类型,而数据类型又都是抽象的概念,初学者理解起来比较困难,所以我们往往是先应用再理解,但是在本篇文章我决定用先理解再应用的方式尝试一下,试试效果。
1、对数据类型的理解
想要理解一个事物,就要先回答三个问题:是什么、为什么、怎么用。我们下面就先用通俗的话理解一下。
- 是什么:数据类型一般指数据元,可以理解为数据的基本单元。正常情况下,一切程序的运行,都是围绕着数据元的组合和运算进行的。
- 为什么:为什么要采用数据类型呢?我们可以从它的两个主要性质入手,一个是它的长度,一个是它的类型(这两个性质适用于理解,并没有明确规定):
长度:数据类型的本质就是你要告诉编译器:你在知道标识符在内存中的首地址的情况下,一次取多长就能够把该变量取完。所以一种数据类型必须要保存该类型的长度,不论是基本数据类型,还是复杂数据类型。
类型:计算机存储和计算数据时都是通过2进制码进行的,但单从这样的数根本看不出什么是什么,也就是这能拿出来还不够,数据类型还要负责告诉计算机这个变量是用来干什么的。 - 怎么用:声明和赋值: 数据类型 变量名 =值、表达式; 例:String name = “柯南”;
int a= 50;
注:“=”并不是数学中的“等号”,而是一个赋值运算符。
注:JAVA中数据声明的同时赋值并不是必须的,因为不同的类型本身都有着初始值,但是如果要变量正常使用的话赋值还是必须的。
2、基本数据类型
2.1、基本数据类型的分类
JAVA中基本数据类型一共八种,又可以分为三类:
① 整型:byte、int、short、long、char
byte是字节型,char是字符型,而short、int、long都是表示数字整数;
② 浮点型:float、double
浮点型可以简单理解为有小数点的数字;
③ 布尔型:boolean
两个值:true和false,常用来判断。
2.2、八种数据类型的比较
看表格:
数据类型 | 位数 | 默认值 | 取值范围 |
---|---|---|---|
byte(位) | 8 | 0 | -2^7 - 2^7-1 |
short(短整数) | 16 | 0 | -2^15 - 2^15-1 |
int(整数) | 32 | 0 | -2^31 - 2^31-1 |
long(长整数) | 64 | 0 | -2^63 - 2^63-1 |
float(单精度) | 32 | 0.0 | -2^31 - 2^31-1 |
double(双精度) | 64 | 0.0 | -2^63 - 2^63-1 |
char(字符) | 16 | 空 | 0 - 2^16-1 |
boolean(布尔值) | 8 | false | true、false |
2.3、基础类型间的转换
等级低到高:
byte <char <short <int <long <float <double
自动转换:运算过程中,低级可以自动向高级转换
强制转换:高级需要强制转换为低级,可能会丢失精度
规则:
= 右边先自动转换成表达式中最高级的数据类型,再进行运算;
= 左边数据类型级别 > 右边数据类型级别,右边会自动升级;
= 左边数据类型级别 <右边数据类型级别,需要强制转换右边数据类型;
整型常量赋值给 byte、 short、 char、int、long 时,超过类型最大值,超过需要强转。
3、引用类型的大致介绍
本章主要对引用类型进行大致的介绍,具体的像是类、接口、字符串、数组这些以后的文章我都会单独介绍。
最简答来说除了8中基本类型以外剩下的都是引用类型。
Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。
4、变量命名规则
1、首字母是英文字母、$和下划线,由字母、数字和下划线组成。 [很常规]
2、变量的命名遵循见名知义的原则。 [很重要,比如名字就用 name ,而不是用a、b、c这样的命名,不然又要找找找]
3、用驼峰命名法命名多个单词组成的变量名。 [比如: setAge ]
4、变量名[方法名]首字母建议不用大写字母。 [首字母大写一般是用来标识类名的] -- 看起来更规范而已
5、变量名不要使用Java关键字。
java关键字,如下图(以后换成表):
常量的由所有大写字母构成,多个单词通过_连接。