Java入门-标识符、关键字、变量和数据类型

一、标识符、关键字、变量和数据类型

1.标识符

​ 含义:给类、方法、变量、接口取名字时使用到的字符序列。
​ 组成部分:数字、英文大小写字母、$、_ 、中文

​ 注意事项:

  • 不能以数字开头
  • 区分大小写
  • 不能使用除了$和_以外的特殊符号
  • 不能使用Java的关键字
  • 不要使用中文,显得很小白

2.关键字

​ 含义:Java给我们提前定义好的就有特殊意义功能的单词

​ 注意:每个关键字都有不同的用法,像类名、变量名等都是关键字。

3.变量

1.什么是变量?

​ 变量本质上来说是内存的一块空间,这块空间有类型、名字和字面值。

​ 变量包含三个部分:数据类型名称字面值(数据)

​ 变量是内存中存储数据的基本单元。

​ 变量中存储的具体数据必须和变量的数据类型一致,否则会报错。

​ 变量必须先声明再赋值后才能访问。

在同一作用域当中,变量名不能重名,但变量可以重新赋值。

​ 在不同作用域当中,变量名可以同名(但不建议)。

2.声明变量的语法格式

数据类型 变量名 如:int a

3.声明变量后对变量进行赋值的语法格式

变量名=字面值 如:a = 100

​ 注释:(1).字面值的数据类型必须和变量的数据类型一致;

​ (2).’='是一个赋值运算符,赋值运算符是先运算符号右边的表达式,表达式执行结束之后的结果赋值给左边的变量。

4.声明变量和变量赋值可不可以一起完成?

​ 声明变量和赋值可以一起完成。格式为:

数据类型 变量名 = 字面值 如:int b = 200

5.变量声明后可以重新赋值吗?

变量声明之后可以重新赋值,变量的值可以变。

​ 如:int i = 10;i = 100

6.变量可以在一行声明多个吗?

变量可以在一行声明多个。 如:int a,b,c

7.通常访问变量的方式有两种:

get:获取,读取变量中保存的具体数据。

set:设置,修改变量中保存的具体数据。

​ (后面会学,别纠结是啥)

8.变量的分类:

​ 根据声明的位置分为两类:

局部变量:在方法体内声明的变量

全局变量(成员变量):在方法体外声明的变量

9.变量的作用域

变量的作用域是指变量的有效范围,一般遇到**{}**就是一个作用域。

​ 在for循环中声明的变量,只能在for循环中访问。如:for(int a;a<5;a++){...}只有在{}里边访问a才不会报错.

9.补充

Java遵循就近原则

​ 类体中不能直接编写java语句,除声明变量外。

​ 有了变量的概念后,内存空间就得到了重复使用。

4.数据类型

1.数据类型图

sjlx

注意:1.小数数字默认为double类型,所以float的值必须+F/f

​ 2.char类型的值用**单引号(’’)**括起来。

​ 3.boolean的值只能是true(真的)或false(假的)

​ 4.取值范围:

byte:-128~127

int:-2147483648~2147483647

char:0~65535

short:-32768~32767

​ 5.取值范围的大小排序:

byte<short<int<long<float<double

​ 6.1字节=8位(bit)

​ 7.数字字面量:程序中的数字

整数数字默认int类型

小数数字默认double类型

2.数据类型的作用

​ Java语言是强类型语言

​ 每一个数据都有相关的类型,不同的数据类型的数据占用的空间大小都不同

​ 数据类型的作用就是指导JVM在运行时给该数据分配多大的内存空间

3.Java数据类型的分类

​ Java的数据类型分为两大类:基本数据类型:int、boolean、float等。

引用数据类型:类、接口、数组、字符串等。

4.基本数据类型

​ 基本数据类型分为四大类,共八种:

分类标识符
整数型byte、short、int、long、
浮点型float、double
布尔型boolean
字符型char
5.八种基本数据类型占用空间的大小:
类型名字占用存储空间表数范围比特位
byte字节型1字节-128127(-2的7次方2的7次方-1),共256个8
short短整型2字节-2的15次方~2的15次方-116
int整型(默认)4字节-2的31次方~2的31次方-132
long长整型8字节-2的63次方~2的63次方-164
float单精度浮点型4字节32
double双精度浮点型(默认)8字节64
boolean布尔型1字节8
char字符型2字节0~6553516

解释:1.字符型和字符串型的区别:

​ 字符串不属于基本数据类型,属于引用数据类型;

字符使用单引号(’’);字符串使用双引号("")

​ 2.字节(byte):

1Byte=8 bit (1个字节=8个比特,其中一个比特位表示一个二进制位(0/1))

​ 3.boolean类型:单独使用4字节(底层用int表示)

数组使用1字节(底层用byte数组表示)

6.Java基本数据类型之间的转换(数值型的转换)

​ 取值范围:byte<short<int<long<float<double

​ 分为三种:

​ 1.自动转换:取值范围小转为取值范围大

​ 如:byte m=100; double n=m;

​ 2…强制转换:取值范围大转为取值范围小

​ 语法:数据类型 变量 = (目标类型)数据;

​ 如:double u=123.123; byte v=(byte)u;

​ 3.特殊点(面试题)

	//案例一:
	byte b1 = 1;//1为int类型的数字字面量,但1在byte类型的范围内,就直接赋值
	//byte b2 = 128;//128为int类型的数字字面量,但128不在byte类型的取值范围内,所以报错
	byte b2 = (byte)128;
	//128 - int类型 - 4字节 - 32位  0000,0000,0000,0000,0000,0000,1000,0000
	//(byte)128 - byte类型 - 1字节 - 8位   1000,0000
	System.out.println(b1);
	System.out.println(b2);
	
	//案例二:
	//int i = 12345678901;
	//整数数字默认是int类型的数字字面量,但是12345678901超过了int类型的最大取值范围,所以报错
	
	//案例三:
	//long 11 = 12345678901;
	//12345678901默认是int类型的数字字面量,但是12345678901超过了int类型的最大取值范围,所以报错
	long l2 = 12345678901L;
	//12345678901L认为是long类型的数字字面量
	
	//案例四:
	float f1 = 1;
	//int<float,自动转换,不报错
	//float f2 = 1.0;
	//double>float,不能自动转换,报错
	//解决方案1
	//float f2 = (float)1.0;
	//解决方案2
	float f2 = 1.0F;
	System.out.println(f1);
	System.out.println(f2);

	//案例五:
	//boolean类型与其他类型不兼容
	boolean bool = true;
	//int i = (int)bool;//报错
	
	//案例六:
	char c = 'a';
	int i = c;//获取该字符的ASCII码
	System.out.println(i);//97 ASCII码
7.字符编号

​ 其他基本类型表示的都是数字,就可以正常转换的。但char类型表示的是文字,文字和二进制之间默认情况下是不存在转换关系的,为了实现文字,就需要人为制定对照关系:字符编码。如支持英文的字符编码为ASCII码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

釣餌锒鐺

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值