Java数据类型,变量及常量
一、Java数据类型
1、什么是数据类型?
数据类型在计算机语言里面,是对内存位置的一个抽象表达方式,可以理解为针对内存的一种抽象的表达方式。
2、为什么要用到数据类型?
Java是健壮型语言,所以Java对于数据类型的规范会相对严格。同时数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,这样就可以充分利用内存。
3、Java有哪些数据类型?
3.1、整数数据类型
- 关键字:byte,short,int(默认),long
- 整型取值均为整数,即正负整数,包括0
- Java默认整数类型为int
- 虽然四个数据类型均为整型,但也有大小之分,byte<short<int<long
3.2、浮点数据类型
- 关键字:float(单精度),double(双精度)
- float 和 double 都是表示浮点型的数据类型,它们之间的区别在于精确度的不同
- double 类型比float 类型存储范围更大,精度更高
- 通常的浮点型数据在不声明的情况下都是double型的,如果要表示一个数据时float 型的,可以在数据后面加上 “F”
- 浮点型的数据是不能完全精确的,有时候在计算时可能出现小数点最后几位出现浮动,这时正常的
3.3、字符数据类型
- 关键字:char
- char类型用于定义字符,字符的值需要用半角单引号括起来
- 多个字符的值用半角双引号括起来,称之为字符串,字符串的关键字是String
- char类型所占内存空间是2个字节
- char类型是可以运算的因为char在ASCII等字符编码表中有对应的数值,在Java中,对char类型字符运行时,直接当做ASCII表对应的整数来对待。char的取值范围0~65535。十进制、八进制、十六进制均可。输出字符编码表中对应的字符。
3.4、逻辑(布尔)类型
- 关键字:boolean
- boolean类型数据只允许取值是真(true)或假(false)
- boolean类型适用于逻辑运算,一般用于程序流程控制
- boolean类型一般作为关系运算符的结果展示
3.5基本数据类型转换
整型、浮点型和字符型的数据在混合运算中可以相互转换,这种转换是自动的,类型转换时遵循以下原则:
- 容量小的类型自动转换为容量大的类型,当使用byte、short、char进行计算时,会自动转换成int类型(byte、short、char) -> int -> long -> float -> double
- 容量大的类型转换为容量小的类型时,需要加上强制转换符,但是会造成数据的精度降低
- 有多种类型数据的混合运算时,系统会自动将所有参与运算的类型都转换成容量最大的类型,然后再进行运算
- 数值类型与字符类型混合运算时,字符类型会使用在ASCII等字符编码表中有对应的数值进行运算
二、变量
1、什么是变量?
- 内存中的一个存储区域
- 该区域有自己的名称(变量名)和类型(数据类型)和值
- Java中每个变量必须先声明,再赋值,然后才能使用
- 该区域的数据可以在同一类型范围内不断变化
- Java 中的变量有四个基本属性:变量名,数据类型,存储单元和变量值
2、如何定义变量?
int count=11;//整数类型
double money=1.21;//浮点类型
char sex='男';//字符类型
boolean isVip=true;//逻辑类型
String context="我爱你中国";//字符串类型
float price=1.2F;//单浮点类型
long size=123123121L;//长整数类型
3、定义变量注意事项
- 创建多个变量时,变量的名字不可以重复
- 对于float和long的数据类型来说,F和L的后缀不要丢掉
- 如果使用byte和short类型的变量,右侧的数据值不可以超过左侧的范围
- 变量赋值后才可以直接使用
- 变量不能操过作用域的范围。那么什么是作用域呢?从定义变量的那一行开始,一直到直接所属的大括号结束
4、数据的大小换算
5、变量的作用域
Java用{}作为语句块的范围,称为作用域,在作用域里定义的变量,只有在该作用域结束之前才可使用,作用域是由{}的位置决定的。对于在作用域里定义的变量,作用域同时决定了它的“可见性”以及“存在时间”。
在Java中,变量的作用域分为四个级别:类级、对象实例级、方法级、块级。
- 类级变量又称全局级变量或静态变量,需要使用static关键字修饰。类级变量在类定义后就已经存在,占用内存空间,可以通过类名来访问,不需要实例化。
- 对象实例级变量就是成员变量,实例化后才会分配内存空间,才能访问。成员变量是定义在方法之外,类之内的。成员变量随着对象的创建而存在,随着对象的消失而消失。
- 方法级变量就是在方法内部定义的变量,就是局部变量。局部变量在调用了对应的方法时执行到了创建该变量的语句时存在,局部变量的作用域从它被声明的点开始,一旦出了自己的作用域马上从内存中消失。
- 块级变量就是定义在一个块内部的变量,变量的生存周期就是这个块,出了这个块就消失了,比如 if、for 语句的块。块是指由大括号包围的代码
6、变量的命名规范
变量的命名又称为标识符,是程序人员在开发中,自定义的名称,这些名称的定义要遵循以下规范:
- 变量命名只能使用:字母 数字 $ _
- 变量第一个字符只能使用:字母 $ _
- 变量第一个字符不能使用:数字
- 使用完整的单词命名,而非缩写
- 不能使用关键字
- 命名时尽量要简明,并且见名知意,方便其他程序人员阅读
PS:_是下划线,不是-减号或者—— 破折号
7、变量的命名规则
- 包名:
多个单词组成时,所有字母都小写
例如:adminmodule
- 类名、接口名:
多个单词组成时,所有单词的首字母大写,帕斯卡命名法
例如:AdminModule
- 变量名、函数名:
多个单词组成时,除第一个单词外,其他单词的首字母大写,驼峰式命名法
例如:adminModule
- 常量:
所有字母都大写,单词之间用下划线连接
例如:ADMIN_MODULE
三、常量
1、什么是常量:
常量表示固定的取值,在程序执行的过程中其值不可以发生改变。
2、Java中的基本类型常量
- 字符串常量 用双引号括起来的内容
- 整数常量 所有整数
- 小数常量 所有小数
- 字符常量 用单引号括起来的内容,里面只能放单个数字,单个字母或单个符号
- 较为特殊 只有true和false
3、如何定义常量?
final int AGE = 18; //整型常量
final double PRICE = 20.12; //浮点型常量
final boolean IS_VIP = false; //布尔型常量
final char SEX = '男'; //字符型常量
final String USER_NAME = "张三"; //字符串型常量
四、注释
1、什么是注释?
用于解释说明程序代码的文字叫做注释。
2、注释的作用是什么?
方便程序员了解代码块的含义,提高代码的阅读性。
3、Java中注释的格式有哪些?
单行注释:// 注释文字
多行注释:/* 注释文字*/
文档注释:/** 注释文字*/
五、输入输出知识点
1、输出语句:
System.out.println();
2、输入语句:
第一步:引入Scanner对象
import java.util.Scanner;
第二步:接收键盘输入值
int i;
i=new Scanner(System.in).nextInt();
3、输入输出完整代码如下
package test;
import java.util.Scanner;
public class HelloWord {
public static void main(String[] args) {
int i;
i=new Scanner(System.in).nextInt();
System.out.println(i);
}
}