1.字面常量
在初识Java中, System.Out.println("Hello World"); 语句,不论程序何时运行,输出的都是Hello World,"Hello World"就是字面常量。
常量--程序运行期间固定不变的量,比如:一个礼拜七天,一年12个月等。
上面的:100、3.14、‘A’、true/false都是常量,将其称为字面常量,字面常量的分类如下所示:
注意:字符串、整形、浮点型、字符型以及布尔型,在Java中都称为数据类型。
2.数据类型
在Java中数据类型主要分为两类:基本数据类型和引用数据类型。
基本数据类型有四类八种: 四类--整型、浮点型、字符型以及布尔型 一共八种--如下图
注意: 不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节;整形和浮点型都是带有符号的;整型默认为int型,浮点型默认为double; 字符串 String 属于引用数据类型,此类型后序介绍。
查看字符编码(UTF-8)http://www.mytju.com/classCode/tools/encode_utf8.asp
【注:学习编程 能不背 就不背~ 需要反复写代码 在试用中强化理解与记忆~ 】
3.变量
3.1 概念
在程序中,除了有始终不变的常量外,有些内容可能会经常改;
比如:人的年龄、身高、成绩分数、数学函数的 计算结果等,对于这些经常改变的内容,在Java程序中,称为变量。而数据类型就是用来定义不同种类变量的。
3.2 语法格式
3.3 整型变量
3.3.1 字节型变量
3.3.2 短整型变量
3.3.3 整型变量
3.3.4 长整型变量
思考:byte、short、int、long都可以定义整形变量,为什么要给出4种不同类型呢?
这就好比买衣服时的尺码:
3.4 浮点型变量
3.4.1 单精度浮点型
float 类型在 Java 中占四个字节, 同样遵守 IEEE 754 标准. 由于表示的数据精度范围较小, 一般在工程上用到浮点数 都优先考虑 double, 不太推荐使用 float. float的包装类型为Float。
3.4.2 双精度浮点型
4. double 类型的内存布局遵守 IEEE 754 标准(和C语言一样), 尝试使用有限的内存空间表示可能无限的小数, 势必会存在一定的精度误差,因此浮点数是个近似值,并不是精确值。
3.5 字符型变量
查看字符编码(UTF-8)http://www.mytju.com/classCode/tools/encode_utf8.asp 3. char的包装类型为Character
3.6 布尔型变量
布尔类型常用来表示真假
3.7 字符串类型
在Java中使用String类定义字符串类型
在有些情况下,需要将字符串和整形数字之间进行转换:
1. int 转成 String
(此处打印结果为10,但其实是 字符串 "10" 只不过 " " 引号在打印的时候省略了)
2. String 转成 int
(本节对只是对字符串进行简单的介绍,大家能够正常使用即可,后序会详细给大家介绍。 )
4.类型转换与提升
4.1 类型转换
Java 作为一个强类型编程语言, 当不同类型之间的变量相互赋值的时候, 会有较严格的校验.
【如下:因为long的范围大于int,所以可以把int赋给long,但反过来就不行。】
在Java中,当参与运算数据类型不一致时,就会进行类型转换。
Java中类型转换主要分为两类:自动类型转换(隐式) 和 强制类型转换(显式)。
4.1.1 自动类型转换(隐式)
代码不需要经过任何处理,在代码编译时,编译器会自动进行处理。
特点:数据范围小的转为数据范围大的时会自动进行。
4.1.2 强制类型转换(显式)
当进行操作时,代码需要经过一定的格式处理,不能自动完成。
特点:数据范围大的到数据范围小的。
4.2 类型提升
不同类型的数据之间相互运算时,数据类型小的会被提升到数据类型大的。
1. int与long之间:int会被提升为long
2. byte与byte的运算