数据类型

概述:本节主要内容为标识符、关键字、变量、常量、基本数据类型

标识符Identifier

作用:给常量、变量、方法、类、包命名。

规范:

  • 1.由字母、下划线_、$、数字任意组合,其中数字不能开头。

  • 2.大小写敏感,长度无限制。

  • 3.不能是java关键字。

  • 4.可使用汉字命名合法,但不建议使用。

  • 5.不能包含空格。

注意:Java采用Unicode国际标准字符集。所以字母的含义涵盖英文和汉字。

使用规范:

常量:全部大写。如:SESSION_VALUE。

类与接口:每个单词首字母大写。如:MyGame。

方法与变量:除第一个单词的首字母小写外,后面所有单词的首字母都要大写。驼峰(Camel)式命名。如:highLight。

:全部小写。

关键字、保留字

说明:java提供给内部使用的,不能使用来给方法,类等命名。

关键字常用的有:public、static、if、else、for等。

变量

说明:值可以变化/修改的量,本质是可操作的内存空间(内存的一块存储空间)。

变量要使用前必须声明数据类型,不建议在同一行声明多个变量。

要素:数据类型+名称+作用域 举例:int a = 23;。

注意:

  • 每个变量必须有类型,基本类型或引用类型。

  • 变量名须是合法的标识符。

  • 变量声明是一条完整的语句,每一个声明必须以分号结束。

变量分类:

类型

局部变量

成员(实例)变量

静态(类)变量

从属

方法/代码块

对象

初始化值

类中位置

方法内或方法声明上

类中方法外

类中、static修饰

内存位置

方法区静态区

生命周期

方法

对象

调用方式

直接调用

方法名

方法名或类名(建议)

生命周期大小:局部变量<成员(实例)变量<静态(类)变量。

常量

说明:在程序的执行过程中其值不发生改变的量,使用final修饰。

分类:

字面值常量:整数,小数,字符,字符串,布尔,空六种。

自定义常量(面向对象会讲解)。

记住常量的命名:全部大写加下划线。

基本数据类型

primitive type:8大类型,分为数值(byte、short、int,long)、浮点(float、double)、布尔boolean、字符char。记住java基本八大类型java常量六大类型的区别,不要搞混了。

1 byte = 8 bit。(引用数据类型:类class(String属于类)、数组[]、接口interface)

类型

字节数

大小

byte字节整型

1

-128 ~ 127

-2^7 ~ 2^7 -

short短整型

2

-2^15 ~ 2^15 - 1

int整型

4

-2^31 ~ 2^31 - 1

Long长整型

8

-2^63 ~ 2^63 - 1

float单精度浮点

4

-3.40310^38 ~ 3.40310^38

double双精度浮点

8

-1.79810^308 ~ 1.79810^308

char

2

0 ~ 2^16 - 1 = 65535

boolean

1

1

1.整数型进制表示

二进制以0b或者0B开头。

8进制以0开头。

10进制就是平常写法。

16进制以0x或者0X开头。

2.java的整数类型默认为int,long类型加l或L。

3.浮点型float可以精确到小数点后7位,double大约是它的两倍。

记住:浮点类型不是精确的,也没法精确。浮点默认double类型(double类型也可以加d或者D表示),加f或者F表示float类型。浮点型的表达方式:1.5、1.5f、.5(表示0.5)、1.5e2(科学计数法:1.51010)。浮点型由于底层存储结构,会有一定的精度损失。

看下面代码的运行结果:

要想使用精度运算,请使用BigDecimal方法或者BigInteger方法。

4.字符char用单引号包裹起来。

字符一般只能放一个符号,Unicode编码除外。

比如:

还有一种写法也可以:

char c = 2 + '@';
char c = (char) ('x'+2);
System.out.println(c);// 字符c 可以等于字符加数值,也可以等于(char)(数值)。单独加数值要强制转换,数值加字符可以直接等于,不用强转。

5.Boolean只有true和false两个值,

建议:Less is More!请不要这样写:if(flag == true)或if(flag == false),容易写错。建议写成:if(flag)或if(!flag)。

6.保存密码身份证证号最好使用字符串类型,如int age = 0000;保存到数据库结果为0。

7.数据范围与字节数不一定相关,例如float数据范围比long更加广泛,但是float是4字节,long是8字节。

Last updated

Was this helpful?