java学习记录二:变量、数据类型、ASCII码表和运算符

一、变量的解释

概念:在程序的执行过程中,其值可以在一定范围内发生改变的量。
白话:变量可以看作是一个容器,可以存储数据,但只能存储一个数据,存储的数据可以发生变化,且数据是有类型的,

二、数据类型

java里的单位是字节,8位是一个字节。数据类型就是解释这个数据是什么类型的,有数字,字符串,小数等。

1.基本数据类型

8种:byte,short , int,long ,float ,double,char,boolean
js种基本数据类型是:string,number,boolean,undefined,null

数据类型关键字内存占用取值范围
字节型byte1个字节-128 至 127 -128
短整型short2个字节-32768 至 32767
整型int(默认)4个字节-231 至 231-1
长整型long8个字节-263 至 263-1 19位数字
单精度浮点数float4个字节1.4013E-45 至 3.4028E+38
双精度浮点数double(默认)8个字节4.9E-324 至 1.7977E+308
字符型char2个字节0 至 216-1
布尔类型boolean1个字节true,false

java中默认类型:整数是int,浮动类型是double
float采用科学计数法,取值范围远远大于long类型
long类型:建议数据后加L表示。
float类型:建议数据后加F表示。

2.引用数据类型

类,接口,数组,枚举

3.变量默认值

String null
int 0

三、变量和内存的关系

将内存比作田地,变量就是萝卜坑,一个萝卜一个坑,大萝卜放大坑,小萝卜放小坑。大萝卜不能放小坑,小萝卜放大坑浪费。方萝卜不能放圆坑,圆萝卜不能放方坑。后放的萝卜会把前面的萝卜挤掉。
变量的本质就是内存中的一块空间,空间的大小由数据类型决定。要想找到变量对应的内存空间的数据,需要给变量对应的内存空间起个名字,叫做变量名称。变量对应的内存空间必须有数据才能使用,这种向变量内存空间中,存储数据的过程叫做初始化或者赋值。
后赋值的数据会覆盖前面的数据。

四、定义变量的格式

1.先创建变量,再赋值

数据类型 变量名称;
变量名称 = 数据值

2.创建变量时,同时赋值

数据类型 变量名称 = 数据值

3.创建多个变量,再赋值

数据类型 变量名称1,变量名称2,变量名称3;
变量名称1 = 数据值1;
变量名称2 = 数据值2;
变量名称3 = 数据值3;

4.创建多个变量时,同时赋值

数据类型 变量名称1= 数据值1,变量名称2 = 数据值2,变量名称3 = 数据值3;

五、定义变量的注意事项

变量名称:在同一个大括号范围内,变量的名字不可以相同。
变量赋值:定义的变量,不赋值不能使用。
定义long类型的变量时,需要在整数的后面加L(大小写均可,建议大写)。因为整数默认是int类型,整
数太大可能超出int范围。
定义float类型的变量时,需要在小数的后面加F(大小写均可,建议大写)。因为浮点数的默认类型是
double, double的取值范围是大于float的,类型不兼容。

六、标识符

1.标识符解释

程序中起名字的地方就叫标识符(类名,方法名,变量名)

2.标识符命名规则

标识符可以包含 英文字母26个(区分大小写) 、 0-9数字 、 $(美元符号) 和 _(下划线) 。
标识符不能以数字开头。
标识符不能是关键字。

3.命名规范

类名规范:首字母大写,后面每个单词首字母大写(大驼峰式)。
方法名规范: 首字母小写,后面每个单词首字母大写(小驼峰式)。
变量名规范:首字母小写,后面每个单词首字母大写(小驼峰式)。

七、数据类型转换

1.自动转换(类型小的自动转类型大的,一般在计算中)

数据类型不一致时,进行计算会自动转换,自动类型转换是自动完成的。从小到大的类型转换是在左边补上0,补满为止。
byte,short和char参与运算会自动变成int类型。
注意接收结果的变量数据类型一定要比计算结果大,不然计算的结果存不进去。
int和dobule计算会变成dobule类型,int和int计算还是int类型
自动类型都会从小往大自动转换。

2.手动强制转换(类型大的转类型小的)

大数据存到小类型变量里,需要手动强制转换,不然会报错。
大的数据不能直接赋值小的数据类型变量中,有两种解决方案,

1.把变量内存扩大

即在定义变量类型的时候,就定义大内存类型的变量。

2.把数据变小

long变成int
把左侧的4个字节内容减去,如果都是0,对结果没有影响。要是减去的有1,会有影响。
写法:

double d = 1.5
int y = (int)d //1

强制把dobule转int,结果变成了1,丢失了精度

short s=1
s = s+1 //报错,变成了int类型,

需要把结果变成short类型

int a =65
char s = (char)( a)//B,将int类型,强制转为字符类型,

八、ASCII码表

计算机只能存储0和1,所以存储到计算机中的所有内容都会转换成0和1进行存储。
这时候需要一张表来把0和1组成的数字来对应各自的字符。就会ASCII码表。先把二进制转10进制,再找表中对应的字符,显示出来。
A是65,a是97,’0‘是48
取的时候,把对应二进制转换为十进制,找到ASC表中对应的字符。

九、算数运算符

对常量和变量进行操作的符号。

1.+:加法运算

1.数学中的加法运算,java中字符会变成int相加,变成数字运算。
2.字符串才会拼接起来。java里一定要区分字符和字符串,不是同一个类型。

2.-:减法运算

3.*:乘法运算

4./:除法运算

int类型之间的运算取整数,会有余数,需要小数的话,需要转成doubel运算。

5.%:模运算

取余数。可以判断数字的奇偶性。可以去各个位子上的数。
被除数%10,取个位
被除数/10%10,取十位,
被除数/100%10,取百位。

6.=:赋值运算符

就是给变量赋值
赋值运算符特点
1.+=,-=,/=,*=,%= 运算结果的数据类型和左侧变量的数据类型不一致,隐藏强制类型转换
2.整数常量只要不超出所赋值的整数变量的取值范围,可以直接赋值,内部隐藏强制类型转换

/*
		右侧10是int类型(4个字节),左侧变量byte类型(1个字节)
		按照道理来讲: 大萝卜是不可以直接放入小坑中的
		现在为什么可以呢?
		原因是数字10是一个常量,值并没有超出byte的取值范围
		所以可以直接赋值,内部会帮助我们进行强制类型转换
		等价于:
			byte b = (byte)10;
	*/
	byte b = /*(byte)*/10;
	System.out.println(b);//10

7.复合赋值运算

+=:a+=b a =a+b
这种运算,会发生强制类型转换,将数据变小,放进变量中。容易发生精度丢失。
-=:
*=
/+
%=

8.自增和自减运算符

++a/–a:先加/减1,再进行运算
a++/a–:先运算,在加/减1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值