java基础一:基本类型,运算符号

java中的基本类型

字符型:char 数值型:byte,short,int,long,float,double 布尔型:boolean

类型字节数取值范围
byte1-128-127
char20-65535
short2-2^15 - 2^15-1
int4-2^31 - 2^31-1
long8-2^63 - 2^63-1
float4
double8
booleantrue/false

java中没有byte和short的表示法。
整数数值默认是 int 使用long类型在数值后面加l或者L
浮点类型默认是 double 使用float类型在数值后面加 d或者D
char类型用单引号
byte的取值范围为-128~127,占用1个字节(-2的7次方到2的7次方-1)
short的取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1)
int的取值范围为(-2147483648~2147483647),占用4个字节(-2的31次方到2的31次方-1)
long的取值范围为(-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)
java中负数表示方法:
以负数-5为例:
1.先将-5的绝对值转换成二进制,即为0000 0101;
2.然后求该二进制的反码,即为 1111 1010;
3.最后将反码加1,即为:1111 1011

java中的进制表示

java中默认使用十进制
二进制: 0b* (0,1)
八进制: 0* (0-7) 十六进制: 0X* (0-f)
相比二进制和八进制 十六进制用的较多

java中的运算符

常用运算符 + - * \ %(取余)

不同的类型计算时,自动向上转型
如:int i=1;
short s=2;
float f=1.3f;
double d=1.2;
long l=10L;
i+s 自动转型为 int
i+f 自动转型为float
i+d 自动转型为doulbe
i+l 自动转型为long
i+s+f+d+l 自动转型为double
两个整数相除时只会保留整数部分

自增长/自减少 ++ / --

int a=1;
a++ 表示 a=a+1
a-- 表示 a=a-1
注意 short 自增加或自减少时 结果还是short
同时支持 --a ++a
a++和++a不同在于第一种是先计算后自增 第二种是先自增再计算

int a=1;
int b=1;
System.out.println("(b + a++)="+(b + a++)+" a="+a);//(b + a++)=2 a=2
a=1;
b=1;
System.out.println("(b + ++a) ="+(b + ++a)+" a="+a);//(b + ++a) =3 a=2
复制代码

位运算符

& 位与
将两个数值对应的二进制,每一位进行与运算 1 1 为 1, 1 0 为 0 ,0 0 为 0 | 位或
将两个数值对应的二进制,每一位进行或运算 1 1 为 1, 1 0 为 1 ,0 0 为 0 ^ 异或
将两个数值对应的二进制,每一位进行异或运算 1 1 为 0, 1 0 为 1 ,0 0 为 0 一个数值异或两次同样的数后为本身

符号&|^
1:1110
1:0011
0:0000

~ 取反
一元运算符 将数值对应的二进制每一位取反
<< 左位移
将数值对应的二进制向左移动 移动后用0补齐 使用方式
int a=3;
int b=a<<2;//12 即0000 0000 0000 0011 -> 0000 0000 0000 1100
>> 右位移
将数值对应的二进制向右移动 如果第一位是1 则用1 补齐 如果是0 则用0补齐
int a=9;
int b=a>>2;//2 即 0000 0000 0000 1001 -> 0000 0000 0000 0010
int a=-6;
int b=a>>2; //-2 即 1111 1111 1111 1010 ->1111 1111 1111 1110
>>> 无符号右位移
将数值对应的二进制向右移动 不过第一位是几 都用0 补齐 对于正数没有影响,负数的话就会变为正数
int a=-6;
int b=a>>>2;// 即 1111 1111 1111 1010 -> 0011 1111 1111 1110 ##逻辑运算符 & 与
两边都为true时为true
&& 短路与
两边都为true时为true 与 & 区别 && 在左侧条件为false时不会再判断右侧条件 而 & 左侧为false时还会判断右侧条件
| 或
两边至少有一个true 即为 true 都为false才为false
|| 短语与
两边至少有一个true 即为 true 都为false才为false 与 | 区别 || 在左侧条件为true时,即已经判断结果true不会再判断右侧条件 而 |左侧即便为true还会继续判断右侧条件 #修饰符 类和方法修饰符访问权限范围

符号父子类关系同一个包外部类
public
protected
default
private
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值