运算符,进制的转换

运算符

  1. %的本质,一个公式:a % b =a - a/b * b

  2. 作为独立语句使用i++和++i都一样

    作为表达式使用,前++:是先自增后赋值

    ​ 后++:是先赋值后自增

    int i=1;
    i=i++;   规则使用临时变量:1.temp=i; 2.i=i+13.i=temp;
    System.out.println(i);  i=1int i=1;
    i=++i;   规则使用临时变量:1.i=i+12.temp=i; 3.i=temp;
    System.out.println(i);  i=2
  3. 对于&&短路与而言,如果第一个条件为false,后面的条件不再判断

    对于&逻辑与而言,如果第一个条件为false,后面的条件仍然会判断

    开发中,基本使用的是短路与&&,效率高

  4. 对于短路或||而言,如果第一个条件为true,则第二个条件不会判断,最终结果为true,效率高

    对于逻辑或|而言,不管第一个条件是否为true,第二个条件都要判断,效率低

    开发中,基本使用||

  5. 赋值 运算符的运算顺序从右往左

  6. 赋值运算符的左边只能是变量,右边可以是变量,表达式,常量值

  7. 复合赋值运算符会进行类型转换

  8. 三元运算符 条件表达式?表达式1:表达式2;

    如果条件表达式为true,运算后的结果是表达式1;

    如果条件表达式为false,运算后的结果是表达式2;

    表达式1和表达式2要为可以赋给接收变量的类型(或可以自动转换)

  9. 运算符优先级

请添加图片描述

  1. 只有单目运算符,赋值运算符是从右向左运算的

标识符

  • Java对各种变量,方法和类等命名时使用的字符序列成为标识符
  • 凡是自己可以起名字的地方都叫标识符
  • 标识符的命名规则:
    • 由26个英文字母大小写,0-9,_或$组成
    • 数字不可以开头
    • 不可以使用关键字和保留字,但能包含关键字和保留字
    • java中严格区分大小写,长度无限制
    • 标识符不能包含空格
  • 标识符命名规范
    • 包名:多单词组成时所有字母都小写
    • 类名,接口名:多单词组成时使用大驼峰法
    • 变量名,方法名:多单词组成时使用驼峰法
    • 常量名:所有字母都大写,多单词时每个单词用下划线连接

关键字

请添加图片描述

键盘输入语句与进制

  1. 步骤:

    • 导入该类的所在包,java.util.*
    • 创建该类对象(声明变量)
    • 调用里面功能
  2. 进制介绍:

    二进制:0,1,满2进1,以0b或0B开头

    十进制:0~9,满10进1

    八进制:0~7,满8进1,以数字0开头表示

    十六进制:09及A(10)F(15),满16进1,以0x或0X开头表示

进制的转换

  • 其它进制转10进制
    • 二转十:从最低位开始,将每个位上的数提取出来,乘以2的(位数-1)次方,然后求和
    • 八转十:从最低位开始,将每个位上的数提取出来,乘以8的(位数-1)次方,然后求和
    • 十六转十:从最低位开始,将每个位上的数提取出来,乘以16的(位数-1)次方,然后求和
  • 十进制转其它进制
    • 十转二:将该数不断除以2,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制
    • 十转八:将该数不断除以8,直到商为0为止,然后将每步得到的余数倒过来,就是对应的八进制
    • 十转十六:将该数不断除以16,直到商为0为止,然后将每步得到的余数倒过来,就是对应的八进制
  • 二进制转八,十六
    • 二转八:从低位开始,将二进制数每三位一组,转成对应的八进制数即可。
    • 二转十六:从低位开始,将二进制数每四位一组,转成对应的十六进制数即可。
  • 八,十六转二
    • 八转二:将八进制数每1位,转成对应的一个3位的二进制数即可
    • 十六转二:将十六进制数每1位,转成对应的一个4位的二进制数即可

原码,反码,补码

  • 对于有符号的而言:
    • 最左边的位十符号位:0表示整数,1表示负数
    • 正数的原码,反码,补码都一样(三码合一)
    • 负数的反码=它的原码符号位不变,其它位取反
    • 负数的补码=它的反码+1, 负数的反码=复数的补码-1
    • 0的反码,补码都是0
    • java没有无符号数,Java中的书都是有符号的
    • 在计算机运算时,都是以补码的方式来运算的
    • 当我们看运算结果的时候,要看它的原码

位运算符

  • 按位与& :两位全为1,结果为1,否则为0
  • 按位或| :两位有一个为1,结果为1,否则为0
  • 按位异或^ :两位一个为0,一个为1,结果为1,否则为0
  • 按位取反~ :0->1 ,1->0
  • 算数右移>>:低位溢出,符号位不变,并用符号位补溢出的高位 相当于除2
  • 算数左移<<:符号位不变,低位补0 相当于乘2
  • “>>>” 逻辑右移也叫无符号右移,运算规则是:低位溢出,高位补0
  • 没有<<<符号
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值