变量和运算符的基本知识点

一、1.变量

存数的,代词,指代它所存的数

1.1 声明:变量名、变量类型;变量使用之前必须进行声明、如果多个变量类型一样,可以在一条语句中声明,中间用逗号隔开;如下:

Int a;//声明一个整型的变量,名为a

Int b,c,d;//声明了三个整型变量,名为bcd

1.2 命名:规则:只能由字母、数字、下划线、$组成,首字符不能以数字开头,Java大小写敏感,不能使用java保留字和关键字(如:int; class; public; package; project; if; for ),中文可以作为变量名,但不提倡;见名知意;驼峰命名法:一个单词小写,两个单词以上组成,从第二个首字母开始大写;帕斯卡命名法:所有首字母大写

1.3 初始化:第一次赋值,变量在使用之前必须初始化,在声明的同时赋值或先声明后赋值但确定在第一次使用该变量之前.静态成员变量必须在声明同时初始化或构造器中初始化.

1.4 使用:必须与数据类型匹配;对变量的使用就是对它所存的数的使用;变量在用之前必须声明并初始化

2.基本数据类型

 2.1 有8种:int型(有范围):整数;long型:整数;double型:浮点;char (男和女);boolean (true 和 false),不同类型所占空间大小不同,1G=1024M;1M=1024KB;1KB=1024B;1B=8Bit(位)

2.2 Int:整型,4个字节,只能装整数,-21多亿---21多亿,-2147483648到2147483647

注意:1.整数直接量即直接写出来的整数,整数直接量默认为int类型,但不能超出范围,如果整数超出了int的表达范围则会出现编译错误

2.两个整数相除,会舍弃小数部分并非四舍五入;求百分比先乘100再除

3.运算时超出范围则发生溢出,溢出是需要避免的,其中运算超范围是溢出,数值超范围是编译错误

2.3 Long:长整形,8个字节,整数,范围很大,注意:数字后加L,若运算时有可能超出范围,在第一个数字后加L,system.currentTimeMillis()可以获取自1970-1-1零时到此时此刻的毫秒数

2.4 Double:8个字节,精度值是float的两倍,默认的浮点值为double型,float型需要在数字后F,运算时有些数会有误差,精确运算场合可以使用BigaDecimal 需要精确运算小数时使用

2.5 Boolean:布尔型,1个字节,只能存储true和false

2.6 Char:字符型,2个字节,Unicod编码形式:0-65535

1.java中的char采用unicode编码格式,一个字符(char)对应一个码(int),表现形式是char字符,实质上是int码;

2.字符需放在单引号中,有且仅有一个

3.特殊符号需通过转义符进行转义,转义符;\n表示回车;\r表示换行

4.字符类型事实上是一个16位无符号的整数,0---48,A--65,a---97

3.类型转换
a. 大类型赋值给小类型,需要进行强制类型转换(显示类型转换),程序编译才不会报错。
b. 小类型赋值给大类型,无需强制类型转换,也称为隐式类型转换。
注:
(1)boolean 类型不能和其他类型之间进行交换。
(2)char和byte\short相互转换时,无论大小,都要进行强制转换(一般不建议这样的转换)。
(3 )int类型转换为String类型

 

String类型转换为int类型


 类型提升
由于计算机的 CPU 通常是按照 4 个字节为单位从内存中读写数据。为了硬件上实现方便,不同的类型参与运算,提升为较大的类型,诸如 byte 和 short 这种低于4 个字节的类型, 会先提升成 int,再参与计算。
特例:byte和byte进行运算时,得到的是int类型。
二、运算符

 1.逻辑运算符
逻辑与、逻辑或和逻辑非的所有表达式都必须为boolean表达式;
短路与: 如果左侧表达式值为 false, 则表达式的整体的值一定是 false, 无需计算右侧表达式。
短路或:如果左侧表达式值为 true,则表达式的整体的值一定是 true,无需计算右侧表达式。

2.移位运算
左移 <<:最左侧位不要了,最右侧补 0,左移一位相当于乘2;
右移 >>:最右侧位不要了,最左侧补符号位(正数补0, 负数补1),右移一位相当于除2;
无符号右移 >>>:最右侧位不要了,最左侧补 0;
没有无符号左移!
由于计算机计算移位效率高于计算乘除,当某个代码正好乘除 2 的N次方的时候可以用移位运算代替。
注:
负数是在原码的基础上,符号位不变,其余位按位取反得到反码,再加上1后得到补码,以补码的形式在内存中存储,所以负数的运算是用补码进行运算的。
 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值