Java学习【知识点2】

1.几个概念:

1:运算
    对常量和变量进行操作的过程称为运算。
2:运算符
    对常量和变量进行操作的符号称为运算符。
3:操作数
    参与运算的常量或者变量称为操作数。
4:表达式
    用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。
    不同运算符连接的式子体现的是不同类型的表达式。
    a
    a + b
    a > b

运算符:
    算术运算符
    赋值运算符
    比较运算符
    逻辑运算符
    三目运算符

算术运算符:
    +,-,*,/,
    %,++,-- 

2./和%的区别?

    /:除法,得到商
        符号相同为正,不同为负
    %:除法,得到余数
        符号和第一个操作数相同
%的应用:
    x%3 等于 0 说明x能被3整除
    x%2 等1     说明x是奇数   
        等0     说明x是偶数           

3.++,–运算符
作用:++就是加1,–就是减1。
自增自减运算符

++,--在运算的时候,可以放在操作数的前面,也可以放在操作数的后面
    A:单独使用
        没有区别
    B:参与其他操作使用
        后面:先操作,再自增
        前面:先自增,再操作

4.赋值运算符:
基本:=
扩展:+=

扩展的赋值运算符隐含了强制类型转换:
    int a = 10;
    a += 20;
    a = (a的数据类型)(a + 20)        

5.关系运算符:
==,!=,>,>=,<,<=

注意:
    A:比较运算符的结果肯定是boolean。
    B:你到底是使用"="还是使用"==",你自己要清楚。

6.逻辑运算符:
&,|,!,^
&&,||

注意:
    逻辑运算符用于连接关系表达式
结论:
    &: 有false则false
    |: 有true则true
    !:改变结果,取反
    ^:相同false,不同true
        记忆:情侣关系(男男,男女,女男,女女)            

7.最常用的逻辑运算符;
!,&&,||

&&和&:
    结果一样,但是&&具有短路效果,左边如果是false,右边不执行。
||和|:
    结果一样,但是||具有短路效果,左边如果是true,右边不执行。    

8.操作数据的个数。
三元运算符:
格式:?:

    (比较表达式)?表达式1:表达式2;
    执行流程:
        如果条件为true,运算后的结果是表达式1;
        如果条件为false,运算后的结果是表达式2;

9.我们目前在写程序的时候,数据值都是固定的,但是实际开发中,数据值肯定是变化的,
所以,我准备把数据改进为键盘录入,提高程序的灵活性。

键盘录入数据的步骤:
    A:导包
        import java.util.Scanner;
        位置:class之前,上面
    B:创建键盘录入对象
        Scanner sc = new Scanner(System.in);
    C:获取键盘录入数据
        int i = sc.nextInt();       

10.流程控制语句:

    A:顺序结构(没有基本格式,从上往下依次执行)
    B:选择结构(有格式)
        if
        switch
    C:循环结构(有格式)
        for
        while
        do...while
顺序结构:
    写在前面的先执行,写在后面的后执行   

11.if语句
三种格式

11.1 if语句格式1:
    if(比较表达式) {
         语句体
    }
    执行流程:
        首先判断比较表达式看其结果是true还是false
        如果是true就执行语句体
        如果是false就不执行语句体

    if语句的注意事项:
    A:比较表达式无论简单还是复杂,结果必须是boolean类型
    B:一般来说:
        有左大括号就没有分号,有分号就没有左大括号

11.2 if语句格式2:
    if(比较表达式) {
         语句体1;
    }else {
         语句体2;
    }
    执行流程:
        首先判断关系表达式看其结果是true还是false
        如果是true就执行语句体1
        如果是false就执行语句体2

11.3 if语句的三种格式:
    格式1:适合做一种情况的判断
    格式2:适合做二种情况的判断
    格式3:适合做多种情况的判断

if语句格式3:
    if(比较表达式1) {
         语句体1;
    }else  if (比较表达式2) {
             语句体2;
    }
    …
    else {
             语句体n+1;
    }
    执行流程:
        首先判断关系表达式1看其结果是true还是false
        如果是true就执行语句体1
        如果是false就继续判断关系表达式2看其结果是true还是false
        如果是true就执行语句体2
        如果是false就继续判断关系表达式…看其结果是true还是false
        …
        如果没有任何关系表达式为true,就执行语句体n+1。

12 .switch语句的格式:

    switch(表达式) {
        case 值1:
            语句体1;
            break;
        case 值2:
            语句体2;
            break;
        …
        default:    
            语句体n+1;
            break;
    }   

    格式解释:
        A:switch表示这是switch语句
        B:表达式
            表达式的取值:byte,short,int,char
            JDK5以后可以是枚举
            JDK7以后可以是String
        C:case后面跟的是要和表达式进行比较的值
        D:语句体部分可以是一条或多条语句
        E:break表示中断,结束的意思,可以结束switch语句
        F:default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

    执行流程:
        首先计算出表达式的值
        其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
        最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。        

13.switch语句的注意事项:

    A:case后面只能是常量,不能是变量。
    B:多个case后面的值不能出现相同的。
    C:default可以省略吗?
        可以。但是不建议。
    D:break可以省略吗?
        可以。但是不建议。
        容易出现case穿透。
    E:default的位置一定要在最后吗?
        可以在任意位置,建议在最后。
    F:switch语句的结束条件
        a:遇到break
        b:执行到末尾             

14.循环语句组成:

    A:初始化语句
        一条或者多条语句,这些语句完成一些初始化操作。
    B:判断条件语句:
        这是一个boolean表达式,这个表达式能决定是否执行循环体。
    C:循环体语句
        这个部分是循环体语句,也就是我们要多次做的事情。
    D:控制条件语句
        这个部分在一次循环体结束后,下一次循环判断条件执行前执行。
        通过用于控制循环条件中的变量,使得循环在合适的时候结束。

    循环:
        for
        while
        do..while

        for循环:
            for(初始化语句;判断条件语句;控制条件语句) {
                循环体语句;
            }

            执行流程:
                A:执行初始化语句
                B:执行判断条件语句
                    如果是true:就继续执行。
                    如果是false:就结束循环。
                C:执行循环体语句
                D:执行控制条件语句
                E:回到B

            执行次数:
                A:初始化语句 
                    只执行一次
                B:判断条件语句
                    一次以上
                C:循环体语句和控制条件语句
                    0次以上        

15.while循环的格式:

    while(判断条件语句) {
        循环体语句;
    }

    变形格式:

    初始化语句;
    while(判断条件语句) {
        循环体语句;
        控制条件语句;
    }

    执行流程:
        A:执行初始化语句
        B:执行判断条件语句
            如果是true:就继续执行。
            如果是false:就结束循环。
        C:执行循环体语句
        D:执行控制条件语句
        E:回到B

比对for循环:
    for(初始化语句;判断条件语句;控制条件语句) {
        循环体语句;
    }

16.for循环和while循环的区别

    控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,
    而while循环结束还可以继续使用,如果你想继续使用,就用while,
    否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。

使用场景:
    for循环适合针对一个范围判断进行操作
        什么到什么之间,三位数等
    while循环适合判断次数不明确操作

17.我国最高山峰是珠穆朗玛峰:8848m,我现在有一张足够大的纸张,厚度为:0.01m。
请问,我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度?

分析:
    A:定义统计变量,初始化值是0
    B:折叠一次,厚度就是以前的2倍
    C:折叠次数不明确,用while循环      

class WhileTest2 {
public static void main(String[] args) {
    int count = 0;

    int end = 884800;
    int start = 1;

    while(start<=end) {
        //折叠一次
        start*=2;

        count++;
    }

    System.out.println(count);
}

}

18.do…while的格式:

    do {
        循环体语句;
    }while((判断条件语句);

    变形格式:

    初始化语句;
    do {
        循环体语句;
        控制条件语句;
    }while(判断条件语句);

    执行流程:
        A:执行初始化语句
        B:执行循环体语句
        C:执行控制条件语句
        D:执行判断条件语句
            如果是true:就继续执行。
            如果是false:就结束循环。
        E:回到B

for(初始化语句;判断条件语句;控制条件语句) {
    循环体语句;
}

19.三种循环的区别?

    A:do…while循环至少会执行一次循环体。
    B:for循环和while循环只有在条件成立的时候才会去执行循环体
      他们是可以相互转换的。

我们在使用循环的时候到底该选择谁呢?
    优先考虑for循环,再考虑while循环,最后考虑do…while循环。

注意事项:
    死循环
        for(;;){}

        while(true){}       

20.break的使用场景:

    A:在选择结构switch语句中
    B:在循环语句中
    注意:
        离开使用场景的存在是没有意义的

break:
    遇到break,就中断整个循环。
    默认情况下,break只能中断它所属的那个循环。

21.continue的使用场景:
在循环语句中

    注意:
    离开使用场景的存在是没有意义的

continue  退出本次循环                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值