内容回顾:
1.标识符和类型转换
    1.1 标识符:给类、方法、变量取得名字就是标识符。
        命名规则:
            1.必须是字母、数字、_、$组成
            2.不能以数字开头
        命名规范:
            小驼峰式和大驼峰式。
    类型转换:
        自动类型转换:小范围类型的数据保存到大范围类型的变量,就是自动类型转换。
        强制类型转换:大范围类型的数据保存到小范围类型的变量,就需要强制类型转换
            小范围类型 变量=(小范围类型)大范围类型的数据;例如:int a=(int)13.14;
2.运算符
    算术运算符
        +    -    *    /    %
    赋值运算符
        =    +=    -=    *=    /=    %=
        例如:a+=10相当于a=a+10;a+=10隐含了一个强制类型转换
    自增自减运算符
        ++    --
        前置++(++a)和后置++(a++)
        单独使用:前置++和后置++没有任何区别。
        参与运算或者输出:
            前置++:先+1,再使用;
            后置++:先使用,后+1;
    比较运算符
        ==    !=    >    >=    <    <=
    逻辑运算符
        &和&&:两端都是true,结果才是true。&&有短路效果。
        |和||:两端都是false,结果才是false,||有短路效果。
        !:如果本身是true,取反之后就是false。
    三元运算符(常用)
        数据类型 变量名=比较表达式?值1:值2;
3.键盘录入
    1.在类名上面导包
        import java.util.Scanner;
    2.创建对象
        Scanner sc=new Scanner(System.in);
    3.接收数据
        接收整型数据:
            int a=sc.nextInt();
        接收字符串:
            String s=sc.next();或者String s=sc.nextLine();

今日内容
    1.选择结构
        1.1 if结构(重点1)
        
            单if结构:一种情况的判断
                if(关系表达式){
                    //语句体,就是要执行代码。
                }
                执行流程:
                    1.判断关系表达式的结果是true还是false
                    2.如果关系表达式的结果是true,那么就执行{}中的语句体,否则就不执行。
                    
            if...else...结构:两种情况的判断
                if(关系表达式){
                    //语句体1
                }else{
                    //语句体2
                }
                执行流程:
                    1.判断关系表达式的结果是true还是false
                    2.如果关系表达式的结果是true,那么执行if中的语句体1
                    3.如果关系表达式的结果是false,就执行else中的语句体2
            if...else if......else...:多种情况的判断
                if(关系表达式1){
                    //语句体1
                }else if(关系表达式2){
                    //语句体2
                }
                ...
                else if(关系表达式n){
                    //语句体n
                }else{
                    //else语句体
                }
                执行流程:
                    1.判断关系表达式1的结果是true还是false
                    2.如果关系表达式1的结果是true,那么就执行语句体1,否则,判断关系表达式2的结果是true还是false
                    3.如果关系表达式2的结果是true,那么就执行语句体2,否则,重复2,3步。
                    4.如果所有的if和else if关系表达式结果都是false,最后执行else的语句体。
        1.2 switch结构(了解)
                switch(变量){
                    case 值1:
                        语句体1;
                        break;
                    case 值2:
                        语句体2;
                        break;
                    ...
                    default:
                        语句体n;
                        break;
                }
                执行流程:
                    1.判断变量的值是否等于值1,如果等于,那么就执行语句体1,遇到break就结束了。如果不等于值1,进入第2步。
                    2.判断变量的值是否等于值2,如果等于,那么就执行语句体2,遇到break就结束了,如果不等于值2,重复1和2步。
                    3.最后如果变量的值都不等于给定的值,那么就执行default中的语句体。
                细节:case穿透:如果某个case后面的语句体中没有break,那么就会不经过判断直接执行后面case的语句体,直到遇到
                    break才结束执行。或者整个switch执行完成了结束。
    2.循环结构
        2.1 for循环(重点2):如果想重复的执行一段代码,那么就可以使用循环
            语法:
                for(初始化语句;条件判断语句;条件控制语句){
                    //循环体,也就是要循环执行的代码
                }
                执行流程:
                    1.执行初始化语句
                    2.执行条件判断语句,如果判断条件的结果是true,如果为false,那么就结束循环。
                    3.执行循环体
                    4.执行修条件控制语句
                    5.重复2、3、4步。
                例如:
                for(int i=0;i<5;i++){
                    System.out.println("HelloWorld");
                }
        2.2 while循环(重点3)
            语法:
                初始化语句;
                while(条件判断语句){
                    //循环体,也就是要循环执行的代码
                    //条件控制语句
                }
            执行流程:
                1.执行初始化语句
                2.执行条件判断语句,如果判断条件的结果是true,如果为false,那么就结束循环。
                3.执行循环体
                4.循环体执行完成了之后就执行条件控制语句
        2.3 do...while循环
            初始化语句;
            do{
                //循环体,也就是要循环执行的代码
                //条件控制语句
            }while(条件判断语句);
        
        三种循环的区别:
            for循环和其他两种循环的区别?
                for循环初始化语句中的变量只能在for循环内部使用,而其他两种循环初始化语句中的变量可以在循环外使用。
            do...while循环和其他两种循环的区别?
                do...while循环至少会执行一次循环体,而其他两种循环可能不执行循环体。
        死循环:
            for(;;){
            
            }
            
            while(true){
            
            }

Java学习之随堂笔记系列——day03的更多相关文章

  1. Java学习之随堂笔记系列——day01

    学习方法:听.问.敲.悟听:前提:上课要听懂,没有听懂可以及时的问.问:任何的问题都要及时的问.敲:重点内容.多写多练,只有写和练习才能发现新的问题,有问题就问.悟:举一反三.提升自己.今日内容:1. ...

  2. Java学习之随堂笔记系列——day04

    今日内容1.break和continue关键字以及循环嵌套    1.1 break和continue的区别?        continue表示跳过当前循环,继续执行下一次循环break表示结束整个 ...

  3. Java学习之随堂笔记系列——day02

    昨天内容回顾1.安装jdk和配置环境变量 配置JAVA_HOME和path,只要配置成功之后就可以直接使用java和javac命令.2.HelloWorld案例3.java的基础语法 注释:给程序的解 ...

  4. 《Java 8实战》读书笔记系列——第三部分:高效Java 8编程(四):使用新的日期时间API

    https://www.lilu.org.cn/https://www.lilu.org.cn/ 第十二章:新的日期时间API 在Java 8之前,我们常用的日期时间API是java.util.Dat ...

  5. Django学习day13随堂笔记

    每日测验 """ 今日考题 1.什么是django中间件,它的作用是什么,如何自定义中间件,里面有哪些用户可以自定义的方法,这些方法有何特点 2.基于django中间件的 ...

  6. java学习之路-分享笔记20150327

    ---恢复内容开始--- 2个月间,断断续续学习了一段时间java平台相关知识,慢慢梳理出来一些枝枝叶叶,和大家交流下.3年前用java边看边做写了一个项目,所以对语法不是很关注.需要原文档的留邮箱吧 ...

  7. Django学习day02随堂笔记

    每日测验 """ 今日考题 1.谈谈你对web框架的认识,简述web框架请求流程 2.python三大主流web框架的区别 3.安装django需要注意的事项有哪些(最少 ...

  8. Django学习day12随堂笔记

    每日测验 """ 1.什么是cookie和session,你能描述一下它们的由来和工作机制吗(切勿糊弄,敷衍了事) 2.django中如何操作cookie和session ...

  9. Django学习day08随堂笔记

    今日考题 """ 今日考题 1.聚合查询,分组查询的关键字各是什么,各有什么特点或者注意事项 2.F与Q查询的功能,他们的导入语句是什么,针对Q有没有其他用法 3.列举常 ...

随机推荐

  1. 【设计模式】装饰者模式(DecoratorMode0

    From: https://liudongdong1.github.io/ 装饰者模式(Decorator Pattern):动态地给一个对象增加一些额外的职责,增加对象功能来说,装饰模式比生成子类实 ...

  2. 容器平台(kubernetes)架构设计

    一眨眼距离上次发文好几年过去了,今天翻未读邮件看到博客有文章回复,猛然想起将博客遗忘在角落好几年了,赶紧访问博客.找回密码.翻翻文章,想写点什么但是又不知道从哪下手,N年前的第一篇文章是一个crm设计 ...

  3. Longhorn,企业级云原生容器分布式存储 - 定制默认设置

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...

  4. C#简单实现表达式目录树(Expression)

    1.什么是表达式目录树 :简单的说是一种语法树,或者说是一种数据结构(Expression) 2.用Lambda声明表达式目录树: 1 2 3 4 5 Expression<Func<in ...

  5. 【C#】GC和析构函数(Finalize 方法)

    析构函数: (来自百度百科)析构函数(destructor) 与构造函数相反,当对象脱离其作用域时(例如对象所在的函数已调用完毕),系统自动执行析构函数.析构函数往往用来做"清理善后&quo ...

  6. C# lock的语法糖原理--《.net core 底层入门》之自旋锁,互斥锁,混合锁,读写锁

    在多线程环境中,多个线程可能会同时访问同一个资源,为了避免访问发生冲突,可以根据访问的复杂程度采取不同的措施 原子操作适用于简单的单个操作,无锁算法适用于相对简单的一连串操作,而线程锁适用于复杂的一连 ...

  7. 二进制I/O

    1 import java.io.BufferedInputStream; 2 import java.io.BufferedOutputStream; 3 import java.io.DataIn ...

  8. spring动态切换数据源(一)

    介绍下spring数据源连接的源码类:| 1 spring动态切换连接池需要类AbstractRoutingDataSource的源码 2 /* 3 * Copyright 2002-2017 the ...

  9. 前端调用后台接口下载word文档的两种方法

    1传统的ajax虽然能提交到后台,但是返回的数据被解析成json,html,text等字符串,无法响应浏览器下载.就算使用bob模拟下载,数据量大时也不方便 废话不多说:上代码(此处是Layui监听提 ...

  10. Learning ROS: Using a C++ class in Python

    http://wiki.ros.org/ROS/Tutorials/Using%20a%20C%2B%2B%20class%20in%20Python This tutorial illustrate ...