Java - 运算符与流程控制

【一】运算符——java程序从运算符实现对数据的处理

1.算术运算符

  • 运算结果可能超出数据类型的范围
  • 整数相除结果为整数
  • 除数为零的情况
  • 余数的符号和被除数一致
  • 自增与自减
  • 前缀与后缀的区别
  • 自增和自减隐含着强制类型转换
  • 表达式的数据类型
  • 算术表达式就是用算数运算符连接起来的式子

2.比较运算符(关系运算符)

  • 关系运算的结果是一个布尔值
    • 比较运算符的等于使用两个等号
    • 变量进行比较是比较两个变量的值
  • 字符串的比较
    • +号连接字符串
    • 直接复制字符串字面量
    • 使用String类的构造方法创建字符串对象,会在堆中分配一块存储空间
    • 如果想比较每个字符是否相等可以使用equals()方法 xx.equals(xxx);
    • String 是一个类,是一种引用类型

3.逻辑运算符

  • &逻辑与
  • |逻辑或
  • ^逻辑非
  • &&短路与
  • ||短路或

4.赋值运算符

  • 变量 = 表达式(把表达式的值赋值给左侧的变量,前后数据类型要兼容)
  • 复合赋值隐含着强制类型转换

5.条件运算符

  • 条件 ? 表达式1 : 表达式2
    • 如果条件成立则整个表达式的值就是表达式1的值
    • 如果条件不成立则整个表达式的值就是表达式2的值

6.字符串连接运算符

  • 使用 + 进行字符串的连接

  • 先把基本类型数据转换成字符串再进行连接

    • 转换可以考虑使用空串 ""+

7.位运算符

7.1.&
  • 按位与
    - 两个操作数都是1,结果才是1
7.2.|
  • 按位或
    • 两个操作数一个是1,结果就是1
7.3.^
  • 按位异或
    • 两个操作数相同,结果是0,两个操作数不同,结果为1
7.4.~
  • 按位反
    • 操作数为1,结果为0,操作数为0,结果为1
7.5.<<
  • 左移
    • 右侧补0
7.6.>>
  • 右移
    - 左侧补0
7.7>>>
  • 无符号右移
    - 左侧补0
7.8.【注】
    • 如果 &|^两侧为布尔值,就是逻辑操作

      • 如果两侧为整数就是按位操作

      • <<<不是运算符

      • 位运算符是对整数的二进制位进行运算

        • 对于正整数交换可以用以下代码实现

          m ^= n ; // 类似于 m = m ^ n ;
          n ^= m ; // 类似于 n = n ^ m ;
          m ^= n ; // 类似于 m = m ^ n ;
          

【二】流程控制

1.if-else

if(布尔表达式){
   //如果布尔表达式的值为true
}else{
   //如果布尔表达式的值为false
}

3.while

  • 对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。

    do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。

while( 布尔表达式 ) {
  //循环内容
}

4.do-while(与while类似)

5.switch-case

  • switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
switch(expression){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}

6.break

  • break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。

    break 跳出最里层的循环,并且继续执行该循环下面的语句。

7.continue

  • continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。

    在 for 循环中,continue 语句使程序立即跳转到更新语句。

    在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。

8.for

  • for循环执行的次数是在执行前就确定的
for(初始化; 布尔表达式; 更新) {
    //代码语句
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值