Java基础--运算符、分支结构、循环结构、跳转语句

一、运算符

1.算术运算符:

+        加、拼接、正数

-         减、负数

*         乘

/         除(两个整数相除只会得到整数(因为默认是int))

                也可以通过强制转换得到小数,或其中一个数乘1.0也可得到小数。

%         求余

2.自增自减运算符

        ++ 和 --

        不参与运算:

        ++和--无论是在数据前还是后面都是自增1或自减1

        参与运算:

        ++和--在数据前面:先自增/减1,再参与运算;

        ++和--在数据后面:先参与运算,再自增/减1;

注:

        1. ++和--在参与运算完毕之后,最终的结果都会变为自减1或者自减1。
        2. 输出语句也相当于是参与运算了。
        3. 不能作用于常量。

3.关系运算符

>        大于

<        小于

>=        大于等于

<=        小于等于

!=        不等于

注:结果都是boolean类型;

        ==比较引用数据类型时比较地址是否相同、比较基本数据类型时比较内容是否相同

        equals重写后比较的是内容(大部分类会重写equals方法)、未重写比较的是地址

4.赋值运算符

= 扩展而得:+=、 -=、 *=、 /=、 %= 

扩展的赋值运算符都默认带有强制转换数据类型。

5.位移运算符

<< 左移        每左移一位,就会让原来的数据乘以2

>> 右移        每右移一位,就会让原来的数据除以2

>>> 无符号右移        每右移一位,就会让原来的数据除以2(只作用于正数)

计算机只识别0和1,也就是二进制,位移运算通过原码、反码、补码运算的;

负数的原、反、补码:最高位为1表示负数

        原码:二进制表现形式

        反码:原码按位取反;

        补码:反码+1

        运算时:反码 位移后得到结果的补码、结果的补码-1得到结果的反码、结果的原码通过结果的反码取反得到(最高位为1,因为是负数),右移时最高位都补1;

正数的原、反、补码都相同、发生位移后直接得到结果的原、反、补码;

6.逻辑运算符

与:&        或:|        非:!        异或:^

        当运算时:两边是boolean类型,根据与、或、非、异或得出结果;

                        运算符两边是数据时通过两个数的二进制位次进行与、或、非、异或运算得到结果的二进制;

短路与 &&
短路或 ||

&&和|| 两边放关系运算符(boolean类型),结果分别和&、| 一样;

7.三元运算符

格式:        条件表达式  ? 值1 :值2

当条件表达式为 true时得到值1,为 false时得到值2;

进行赋值输出或得到赋值结果进行其它操作:

如:String s = 条件表达式  ? 值1 :值2;

二、分支结构

1.if语句

if意为如果、else意为否则,如果为true,则执行大括号中的语句体,否则执行else后大括号中的语句体;

                    单分支格式为:if (条件表达式) {

                                             }

                    双分支格式为:if (条件表达式) {

                                             } else {  }

                     多分支格式:if (条件表达式) {

                                             } else if (条件表达式) {  } else ...

                                             (直到最后一个判断结尾是else加上大括号)

2.switch语句

switch语句:switch意为 当  (当满足case 值 :  ,(内容时)执行接下来的语句,直达遇到break才会退出整个switch语句), 若表达式得到的值都不符合所有的值,那么会执行默认语句default的语句体并退出;

        格式:switch (表达式) {

                                case 值1:

                                语句体1;

                                break;

                                case 值2:

                                语句体2;

                                break;

                                case 值3:

                                语句体3;

                                break;

                                ……

                                default:
                                语句体n;
                                break;

                    }

        break、switch和case、default是关键字

注意事项:
    1. 表达式的值是什么类型?
            byte、short、int、char、String、枚举
    2. case后面的数据必须是常量吗?
            是
    3. break可以省略吗?
            可以。但是会穿透现象(直接执行下一个语句体,无视限定值(case后的值))。
    4. default可以省略吗?
            可以。
    5. default必须要放在最后吗?
            可以放在任何地方。但是建议一直放在尾部

三、循环语句

1.for循环

        格式:for(初始化语句; 条件表达式; 初始化语句的改变){
    
                    循环语句体;
                   }

 2.while循环

        格式:        初始化语句;
                           while(条件表达式){
                            循环语句体;
                            初始化语句的改变;
                            }  

3.do... while循环

        格式:        初始化语句;
                           do {
                                    循环语句体;
                                    初始化语句的改变;
                                }while(条件表达式);                                                            

4.三个循环的区别:

for循环更节省内存,初始化语句在for语句中,循环完后此变量直接被回收

for循环常用且用于循环次数明确的语句体

次数不明确时使用其它两种循环

do...while循环至少执行一次(执行完一次后才进行条件表达式的判断)

5.死循环

while(true){
    循环语句体;
}

for(;;){
    循环语句体;
}

四、跳转语句

break        用在switch语句和循环结构中,用来退出switch语句和循环结构。【完全退出】
continue    用在循环结构中,用来退出当次循环,并进行下一次循环   【退出一次】
return        退出方法 【用在方法内部】

      

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值