黑马程序员——基础知识——语句结构

------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

Day03

03.01 逻辑运算符的基本用法

       1、逻辑运算符有哪些

              &   |  ^   !    &&    ||

       2、案例演示

              逻辑运算符的基本用法

       注意事项:

              a:逻辑运算符一般用于连接boolean类型的表达式或者值

              b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式

       3、结论:

       &逻辑与(并且、and):有false为false

       |逻辑或:有true为true

       ^逻辑异或:相同为false,不同为true

       !逻辑非:非false为true,非true为false

              特点:偶数个不改变本身


03.02 逻辑运算符 &&(短路与)和&的区别

       1、案例演示

              &&(短路与)和&的区别:最终结果都一样;&&具有短路效果,左边为

false,就不执行右边了

2、同理||和|的却别

||(短路与)和|的区别:最终结果都一样;||具有短路效果,左边为true,就不执行右边了

       3、开发中常用 &&    ||  !


03.03 位运算符的基本用法

       1、位运算符有哪些

              &(位与)  |(位或)  ^(位异或)  ~取反  >>(向右移)  

>>>(无符号向右移)  <<(向左移)

       2、案例演示

              位运算符的基本用法

             

&  |   ^   ~的用法

                     &:有0则0

                     |:有1则1

                     ^:相同则0,不同则1

                     ~:按位取反

              基本与逻辑运算一样,0代表false,1代表true


03.04 位异或运算符的特点及面试题

       1、案例演示

              位异或运算符的特点

                     ^的特点:一个数据对另一个数据异或两次,该数本身不变

 

       2、面试题

              请自己实现两个整数变量的交换


03.05 位运算符的基本用法2及面试题

       1、案例演示

              <<左移 左边最高为丢弃 右边补齐0

              >>右移 最高位是0,左边补齐0;最高位是1,左边补齐1

>>>无符号右移 无论最高位是0还是1,左边补齐0

有无符号无别:有符号最后全是1,无符号最后可归0(了解)

       2、面试题

              最有效率的算出 2 * 8的结果(最后都是二进制数进行操作)


03.06 三元运算符的基本用法

       1、三元运算符的格式

              (关系表达式)?表达式1:表达式2

              关系表达式为true,就用表达式1,false的话就用表达式2

       2、三元运算符的执行流程

       3、案例演示

              获取两个数中的最大值


03.07 三元运算符的练习

       1、案例演示

              比较两个整数是否相同

 

       2、案例演示

              获取三个整数中的最大值


03.08 键盘录入的基本格式讲解

       1、为什么要使用键盘录入数据?为了让程序的数据更符合开发的数据;让程序更灵活

       2、如何实现键盘录入呢?

              1、导包

              格式 import java.util.Scanner;

              位置:在class上面

              2、创建键盘录入对象

              格式: Scanner sc = new Scanner(System.in);

              3、通过对象获取数据

              格式:int x = sc.nextInt();

       3、案例演示

              键盘录入1个整数,并输出到控制台

              键盘录入2个整数,并输出到控制台


03.09 键盘录入的练习1

       1、键盘录入两个数据,并对这两个数据求和,输出结果

       2、键盘录入两个数据,获取这两个数据中的最大值


03.10 键盘录入的练习2

       1、键盘录入两个数据,比较这两个数据是否相等

       2、键盘录入三个数据,比较这三个数据中的最大值


03.11顺序结构语句

       1、流程控制语句:可以控制程序的执行流程

       2、流程控制语句的分类:

              顺序结构

              选择结构

              循环结构

       3、顺序结构执行流程

              从上往下,依次执行

       4、顺序结构案例:输出几句话看效果即可


03.12 选择结构if语句格式1及其使用

       1、选择结构的分类:if语句  switch语句

       2、if语句有几种格式

              格式1

              格式2

              格式3

       3、if语句的格式1

              if(比较表达式) {

                     语句体;

              }

       4、执行流程:

              先计算表达式的值,看其返回值是true还是false

              true就执行语句体

              false 就不执行语句体


03.13 选择结构if语句注意事项

       1、比较表达式无论简单还是复杂,结果必须是布尔类型

       2、if语句控制的语句体如果是一条语句,大括号可以省略;

       如果是多条语句,就不能省略

       3、一般来说:有左大括号就没有分号,有分号就没有左大括号,即if后面分号和大括号不可共存


03.14 选择结构if语句格式2及其使用

       1、if语句的格式2

              if(比较表达式){

       语句体1;

}else{

       语句体2;

}

       2、执行流程:

              首先计算比较表达式的值,看其返回值是true还是false

              如果是true 就执行语句体1

              如果是false 就执行语句体2

       3、案例演示

              获取两个数据中较大的值

              判断一个数据是奇数还是偶数,并输出是奇数还是偶数

             

       注意事项:else后面是没有比较表达式的,只有if后面有


03.15 if语句的格式2和三元的相互转换问题

       1、案例演示

              if语句和三元运算符完成同一个效果

       2、案例演示

              if语句和三元运算符的区别

             

              三元运算符实现的,都可以采用if语句实现,反之不成立。

 

              什么时候if语句实现不能用三元改进呢?

                     当if语句控制的操作是一个输出语句的时候就不能

                     为什么呢?因为三元运算符是一个运算符,运算符操作完毕就应该

有一个结果,而不是一个输出。

       开发中尽量使用三元运算符,因为代码比较简单


03.16 选择结构if语句格式3及其使用

       1、if语句的格式3:

              if(比较表达式1){

                     语句体1;

}else if(比较表达式2){

                     语句体2;

} else if(比较表达式3){

       语句体3;

}

...

else{

       语句体n+1;

}

       2、执行流程:

              首先计算比较表达式1看起返回值是true还是false

              如果是true,就执行语句体1,if语句结果

              如果是false,接着计算比较表达式2看其返回值是true还是false

             

              如果是true,就执行语句体2,if语句结束

              如果是false,接着计算比较表达式3,看其返回值是true还是false

             

              如果都是false,就执行else中的语句体n+1

       注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示

03.17 选择结构if语句格式3练习

       1、需求:键盘录入一个成绩,判断并输出成绩的等级

              90-100 优;80-89良;70-79中;60-69及;0-59差

       2、需求:键盘录入x的值,计算出y的并输出

              x >= 3    y = 2 * x + 1;

              -1 < x < 3   y = 2 *x

              x <=-1    y = 2 * x – 1


03.18 选择结构if语句的嵌套使用

       1、需求:获取三个数据中的最大值

              if语句的嵌套使用


03.19 选择结构switch语句的格式及其解释

       1、switch语句的格式

                     switch(表达式){         //基本数据类型可以接受byte、short、char、int

case值1:          (可以自动提升为int类型的都可以)

                            语句体1;         //引用数据类型可以接受枚举(1.5版本以后)

                            break;                  //和String字符串(1.7版本以后)

                            case值2:

                            语句体2;

                            break;                  //case值不允许重复

                            ...

                            default :s//有点像else

                            语句体n+1;

break;

}

       2、switch语句的格式解释

       3、面试题

              byte可以作为switch的表达式吗?可以

              long可以作为switch的表达式吗?不可以

String可以作为switch的表达式吗?可以

       4、执行流程

              先计算表达式的值

              然后和case后面的匹配,如果有就执行对应的语句,否则执行default

控制的语句



03.20 选择结构switch语句的练习

       整数(给定一个值,输出对应星期几)


03.21 选择结构switch语句的注意事项

       1、案例演示

              case后面只能是常量,不能是变量,而且,多个case后面的值不能出现

相同的

              default可以省略,但是不建议,因为它的作用是对不正确的情况给出提

示          特殊情况:case可以把值固定,就可以省略

              break可以省略么?最后一个可以省略,其他最好不要省略,会出现一个

现象:case穿透,最终我们建议不要省略,没有break,会遇到break或右大括号才结束,会一路执行语句体

              default一定要在最后么?不是,可以在任意位置,但是建议在最后,即

使不放在最后位置,也是最后被执行

              switch语句的结束条件:遇到break或者是switch的右大括号才结束

 


03.22 选择switch语句练习

       1、看程序写结果

              int x = 2;

              int y = 3;

              switch(x){

                     default:

                            y++;

                            break;

                     case 3:

                            y++;

                     case 4:

                            y++;

}

System.out.println(“y =”+y); // y = 4

       2、看程序写结果

              int x = 2;

              int y = 3;

              switch(x){

                     default:

                            y++;

                     case 3:

                            y++;

                     case 4:

                            y++;

}

System.out.println(“y =”+y); // y = 6


03.23 选择结构if语句和switch语句的区别

       1、总结switch语句和if语句的各自使用场景

              switch建议判断固定值的时候用a

              if建议判断区间或范围的时候用

       2、案例演示

              分别用switch语句和if语句实现下列需求:

                     键盘录入月份,输出对应的季节


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的课程作业管理系,源码+数据库+开题报告+论文答辩+毕业论文+视频演示 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,课程作业管理系统当然也不能排除在外。课程作业管理系统是以实际运用为开发背景,运用软件工程原理和开发方法,采用springboot框架构建的一个管理系统。整个开发过程首先对软件系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统功能设计、系统总体结构设计、系统数据结构设计和系统安全设计等;详细设计主要包括系统数据库访问的实现,主要功能模块的具体实现,模块实现关键代码等。最后对系统进行功能测试,并对测试结果进行分析总结,得出系统中存在的不足及需要改进的地方,为以后的系统维护提供了方便,同时也为今后开发类似系统提供了借鉴和帮助。这种个性化的网上管理系统特别注重交互协调与管理的相互配合,激发了管理人员的创造性与主动性,对课程作业管理系统而言非常有利。 本课程作业管理系统采用的数据库是Mysql,使用springboot框架开发。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。 1、关于课程作业管理系统的基本要求: (1)功能要求:可以管理首页、个人中心、公告信息管理、班级管理、学生管理、教师管理、课程类型管理、课程信息管理、学生选课管理、作业布置管理、作业提交管理、作业评分管理、课程评价管理、课程资源管理等功能模块。 (2)性能:在不同操作系统上均能无差错实现在不同类型的用户登入相应界面后能不出差错、方便地进行预期操作。 (3)安全与保密要求:用户都必须通过注册、登录才能进入系统,并且用户的权限也需要根据用户的类型进行限定。 (4)环境要求:支持多种平台,可在Windows系列、Vista系统等多种操作系统下使用。 关键词:课程作业管理系统,springboot框架; Mysql数据库 Java技术
毕业设计,基于SpringBoot+Vue+MySQL开发的旅游网站,源码+数据库+开题报告+论文答辩+毕业论文+视频演示 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势,旅游网站当然也不能排除在外,随着旅游网站的不断成熟,它彻底改变了过去传统的旅游网站方式,不仅使旅游管理难度变低了,还提升了旅游网站的灵活性。这种个性化的旅游网站特别注重交互协调经营与管理的相互配合,激发了管理人员的创造性与主动性,对旅游管理的管理而言非常有利。 本文首先分析了旅游网站的发展背景和意义,简要阐述了旅游网站系统开发的主要内容和优势,然后简要介绍了国内外旅游网站系统的研究和应用现状,并对系统开发技术,系统分析和总体设计,实现详细功能等。 本旅游网站系统采用的数据库是MySQL,使用Java技术开发,在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。 关键词:旅游网站;Java;SpringBoot; Vue; MySQL 数据库 旅游网站主要功能如下: 1.用户管理:注册、登录、退出、修改密码; 2.分类显示:显示旅游路线的分类; 3.旅游路线显示:按分类查询旅游路线、通过关键字搜索旅游路线、查看旅游路线的详细信息; 4.购物车管理:向购物车中添加旅游路线、修改购物车中旅游路线数量、删除购物车中旅游路线、我的购物车; 5.订单管理:通过购物车中生成订单、查看我的订单、查看某个订单的详细、订单支付、取消未付款订单。 6.首页:提供一个网站首页,该网站用户的登录,注册,所有旅游路线的一级分类,热门旅游路线和最新旅游路线的展示等。 7.旅游路线管理:旅游路线的上架、下架。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值