第二周Java总结

1.if语句:

        1).概念:

        if语是指编程语言,中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。

        2).格式:

        总共有三种if语句格式.

                格式一:

        if(表达式){
                    语句;
            }

执行流程:行流程:
    1).首先表达式是否会成立,成立则执行改语句.
    2).不成立则不会进去.
注意事项:
    1):有{}的地方不能有分号;
    2):当前if(表达式){ // {} 可以省略不写,但是不建议.

                 格式二:

        if(表达式){
                语句1;
            }else{
                语句2;
            }

(表达式)?执行true的结果:执行false的结果;)

                格式三:

        if(表达式){
                语句1;
            }else if(表达式2){
                语句2;
            }else if(表达式3){
                语句3;
            }else if(...){
                ....
                ....
                ....
            }else{
                语句n+1;
                }

执行流程:
    1):首先判断表达式1能否成立,如果成立,则输出语句1;
    2):如果表达式1不成立,则继续判断表达式2是否成立,如果不成立则继续往下判断,直到判断正确,并且执行该语句.
    3):如果上面都不成立,则执行最终语句n+1

2.switch语句:

1.概念:

        “开关”的意思,是一种“选择” 语句 ,它用法非常简单。 switch 是多分支选择 句 。 说得通俗点,多分支就是多个 if 语句 的组合。 从功能上说, switch 语 和 if 语句 完全可以相互取代。

2.执行流程:


    1)switch中的表达式的结果值和case语句匹配,值1和结果匹配,
            就执行语句1,遇见break,switch结束;
    2)    值1和switch表达式结果不匹配,继续判断值2是否匹配,如果匹配,就执行语句2,switch语句结束
        
        ...
        ...
    3)如果case语句后面值都不匹配,这个执行default语句,执行语句n+1,程序执行到末尾结束...
        
        
    break:属于跳转控制语句中的一种    结束,中断意思!    (不能单独使用,只能在switch和循环语句中使用)

3.Switch语句的注意事项:

1)case语句后面只能是常量(Java是一个强类型语言: 语法,结构非常严谨)

相对来说:前端:javascript :简称"js",Switch语句的case中不仅可以常量,也可以是变量 是一个弱类型语言(语法结构非常不严谨)
        
2)case语句中beark 最好携带上,如果没有携带break语句,会造成"case穿透"
       "case穿透": (要灵活使用,并不是说这个情况不好)
     某个case语句中没有带break,此时当跟case的值匹配,这个时候继续就往下执行,不会在判断case!
        
 3)default语句可以在switch语句中的任何位置,不会影响switch的执行流程
         如果在语句中:
                default里面的break千万不能省略;省略,造成case穿透(考点)
         如果在语句末尾,break可以省略不写,前期不建议
            (default:
                System.out.println("输入数据不合法") ;
                //break ;     //可以省略不写(如果default在语句末尾))
            
 4)switch语句的结束条件是:
            a)遇见break结束
            b)程序默认执行到末尾

5.switch语句的特点:

        1)switch的执行流程
        2)default语句可以在语句中的任何位置
​        3)case穿透现象
​        4)switch语句的结束条件    

6.switch语句的格式:

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

3.循环语句:

        1.while语句:

                1.while循环的格式和执行流程:

while循环的格式:
        常用的格式
        初始化语句;
        while(条件表达式){
            循环体语句;
            控制体语句;
        }


执行流程:
            1)先初始化赋值
            2)判断条件表达式是否成立,成立,则执行循环体语句-
            3)执行控制体语句---继续判断条件是否成立,----循环,,,
            ...
            ...
            4)执行到条件表达式不成立,while语句结束

                2.while和for循环的区别:

1)共同点:都时能够实现循环的效果;
    
    2)从格式有些差异
        通用格式:
        for循环:整个操作(初始化语句;条件表达式;控制体语句){
                
        }
        初始化语句;
        while(条件表达式){
            循环体
            控制体语句
        }
        
        a)从内存角度考虑:for循环结束之后,当前里面的局部变量被释放了,节省内存空间!
            相对来说,while循环,结束之后,依然可以访问到这个变量,
            整个main方法结束之后,才释放内存,使用过程中,消耗内存空间!
            for循环比while更好一些!
            
        b) 当前明确循环次数时候,优先使用for循环;不明确循环次数使用的while循环
            for使用最多;

                     3.while常见的死循环:

        for循环的死循环格式(开发中使用不多,jdk原码中会见到这种格式)
    for(;;){
        
        //当满足某个条件的时候,结束 ----->break;
        循环体语句;
    }
    
    开发中,使用多:while循环:死循环格式
    while(true){
        
            
        //当满足某个条件的时候,结束 ----->break;
        循环体语句;
    }

2.for语句:

        1.格式:

for循环语句的格式
    for(初始化语句;条件表达式;步长语句/控制体语句){
        循环体语句;
    }
    
    //执行流程:
    1)初始化语句对变量进行赋值 
    2)判断条件表达式是否成立;
        如果是成立,执行循环体语句;
    3)继续执行控制体语句 
    4)继续回到2)里面判断
        如果是成立,执行循环体语句;
    继续回到3)    
    ...
    ...
    ...
    一直执行到条件不成立结束;

        2.for循环语句的嵌套:


    格式
        for(初始化语句;条件表达式;控制体语句){---外层循环
            //循环体语句
            for(初始化语句;条件表达式;控制体语句){--- 内层循环
                循环体语句...
            }
        }
        
    将一个for循环语句作为 "循环体"去执行;    

一种题型:

/*
需求:统计所有的 "水仙花数"有多个

        分析步骤:
            1)定义统计变量 count
            2)水仙花:明确范围:100-999
            3)确定每各位的数据本身ge,shi,bai 
            4)满足的条件:ge*ge*ge+shi*shi*shi+bai*bai*bai==x, 这个时候统计变量++
            
            5)输出count即可
*/

class ForTest3{
    
    public static void main(String[] args){
        
            //1)定义统计变量 count
            int count = 0 ;
            //2)水仙花:明确范围:100-999
            for(int x = 100 ; x <= 999; x ++){
                //确定每各位的数据本身ge,shi,bai 
                int ge = x % 10 ;
                int shi = x /10 % 10 ;
                int bai = x /10/10 % 10 ;
                
                //确定值满足的条件
                if((ge*ge*ge+shi*shi*shi+bai*bai*bai)==x){
                    
                    //统计变量++
                    count ++ ;
                    System.out.println("第"+count+"次的数据是:"+x) ;
                }
            }
            System.out.println("水仙花数共有"+count+"个") ;
            
        
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值