Java学习笔记2024/1/29

1. 流程控制语句

笔记地点

1.1 流程控制语句基础概念

package com.angus.processControlStatement.processControlStatement;public class processControlStatementNote {public static void main(String[] args) {// 本章知识点: 流程控制语句// 流程控制语句: 通过一些语句,控制程序的执行流程// 解析: 通过顺序结构,分支结构,循环结构,控制程序的执行流程System.out.println("^^");}
}

1.2 顺序结构的基础概念

package com.angus.processControlStatement.sequentialStructure;public class sequentialStructureNote {public static void main(String[] args) {// 题外话: 记笔记流程// 1.从大到小,理清框架// 2.看完当前知识点在整理// 3.当然可以随笔,随笔时注释随笔就行// 知识框架: 流程控制语句 -> 顺序结构// 本篇知识点: 顺序结构// 顺序结构是Java程序默认的执行流程,按照代码的先后顺序,从上到下依次执行System.out.println("1");System.out.println("2");System.out.println("3");System.out.println("4");System.out.println("^^");}
}

1.3 分支结构的基础概念

package com.angus.processControlStatement.branchingStructure;public class branchingStructureNote {public static void main(String[] args) {// 知识框架: 流程控制语句 -> 分支结构// 本章知识点: 分支结构// 分支结构里面包含了两种语句// if语句 和 switch语句// if 表示判断// switch 表示选择System.out.println("^^");}
}

1.3.1 if语句

package com.angus.processControlStatement.branchingStructure;public class branchingStructureNote1 {public static void main(String[] args) {// 知识框架: 流程控制语句 -> 分支结构 -> if语句// 本章知识点: if语句// 为什么要有if语句呢?// 是因为输出结果如果有分支,就要用到if语句来判断走哪个分支// if语句在程序当中就是用来判断的// if语句一共有三个格式// if语句的第一种格式// 第一种格式:// if(关系表达式){// 语句体;// }// 关系表达式就是用来表示判断的// 语句体就是要执行的代码// 执行流程:// 1.首先计算关系表达式的值// 2.如果关系表达式的值为true就执行语句// 3.如果关系表达式的值为false就不执行语句// 4.继续执行后面的其他语句// 流程图放在随笔笔记里// if语句的第二种格式// 就是在第一种格式的基础上加了一个else// 第二种格式:// if(关系表达式){// 语句体1;// } else {// 语句体2;// }// 有没有发现加的这个else语句很像第一种格式的if语句,只是没有了关系表达式// 执行流程:// 1.首先计算关系表达式的值// 2.如果关系表达式的值为true就执行if里面的语句体1// 3.如果关系表达式的值为false就执行else里面的语句体2// 4.继续执行后面的其他语句// 流程图放在随笔笔记里// if语句的第三种格式// 就是在第二种格式中间加一个else if语句// 而且可以观察到中间的else if语句更像第一种格式,只是多加了个else// 随笔// 之后我就将// 第一种格式叫做if语句// 第二种叫做if else语句// 第三种叫做else if语句// 我将它们抽象出来有点类似变量名用来表示变量的那种感觉// 第三种格式:// if(关系表达式1[表判断]){// 语句体1;[表执行]// } else if(关系表达式2){// 语句体2;// }// ...// else {// 语句体 n + 1 ;// }// 随笔// 各个语句的大括号都是分开的,没有具体谁包着谁// 执行流程:// 1.首先计算关系表达式1的值// 2.如果关系表达式1的值为true就执行if里面的语句体1;如果关系表达式1的值为false就计算关系表达式2的值// 3.如果关系表达式2的值为true就执行else if里面的语句体2;如果关系表达式2的值为false就计算关系表达式3的值// 4....// 5.如果所有关系表达式的值都为false,就执行else里面的语句体n+1// 流程图看随笔笔记// 执行流程简单理解就是// 从上往下依次进行判断// 只要有一个判断为真,就执行对应的语句体// 如果所有的判断都为假,就执行else的语句体System.out.println("^^");}
}
package com.angus.processControlStatement.branchingStructure;import java.util.Scanner;public class branchingStructureDemo1 {public static void main(String[] args) {// 本篇demo1对应note1// if的Demo// 需求:键盘录入女婿酒量,如果大于 2 斤,老丈人给出回应,反之不回应// 分析: 1.键盘录入->变量 2.大于->关系运算符->要么输出true要么输出false 3.给出回应和不给出回应->判断->if语句//提示System.out.println("录入女婿酒量");// 1.Scanner scanner = new Scanner(System.in);int wine = scanner.nextInt();// 2.boolean re = wine > 2;// 3.if(re){    //要注意,true是执行,false是不执行System.out.println("可以嘛小伙子");}System.out.println("^^");}
}
// 题外话: 学完一个大知识点记得把笔记腾上去
package com.angus.processControlStatement.branchingStructure;public class branchingStructureDemo2 {public static void main(String[] args) {// 本篇demo2对应note1// if的Demo// if的注意事项:// 1.大括号的开头可以另起一行,但是建议写在第一行的末尾// 2.在语句体中,只有一句代码,大括号可以不写,但是建议写// 3.如果对一个boolean类型的变量进行判断,不要用==号,直接把boolean定义的变量写在小括号中// 随笔// boolean类型定义的变量,int类型定义的变量// 随笔// 有题外话,其他笔记,就可以这样写个随笔// 1.大括号的开头可以另起一行,但是建议写在第一行的末尾int num1 = 10;if( num1 > 1){System.out.println("yes");}int num2 = 10;if( num2 > 1){System.out.println("yes too");}// 随笔
//      int num = 10;if( 10 > 1){System.out.println("yes 直接使用字面量判断也行");}// 2.在语句体中,只有一句代码,大括号可以不写,但是建议写int num3 = 10;if( num3 > 1)System.out.println("yes too");// 比如这个例子// int a = 100;// 这个代码不是一句,其实是两句//        int num4 = 10;
//        if( num4 > 1)
//            int a = 100;
//            System.out.println(a);// 改进int num4 = 10;if( num4 > 1) {int a = 100;System.out.println(a);}System.out.println("--------");// 3.如果对一个boolean类型的变量进行判断,不要用==号,直接把boolean定义的变量写在小括号中boolean falg1 = false;// 此时不是判断,变成了赋值if (falg1 == true){         // 可以这样写,但是非常不建议,因为这样就有两个判断语句了,降低了效率System.out.println("yes1");}boolean falg2 = false;// 此时不是判断,变成了赋值if (falg2 = true){          // 判断变成了赋值,所以不可以这样写System.out.println("yes2");}// 改进boolean falg3 = false;// 此时不是判断,变成了赋值if (falg3){                // 就需要这样写,一个判断语句就够了System.out.println("yes3");}System.out.println("^^");}
}
// 随笔
// 直接使用字面量中的关系运算符表判断
// 间接使用变量中的boolean类型定义变量表判断
// 当然,boolean类型也会使用到关系运算符
// 之所以我们爱用变量
// 是因为变量的可操作性更高
package com.angus.processControlStatement.branchingStructure;import java.util.Scanner;public class test1 {public static void main(String[] args) {// 这篇test1对应note1// 利用if语句的第一种格式// 这个知识点做题//题目://小红:如果你这次考试全班第一,我就做你女朋友。int ranking1 = 1;boolean re1 = ranking1 ==1;if (re1){System.out.println("yes");}// 使用键盘录入Scanner scanner = new Scanner(System.in);System.out.println("打印名次");int ranking2 = scanner.nextInt();boolean re2 = ranking2 ==1;if (re2){System.out.println("yesyes");}System.out.println("^^");}
}
package com.angus.processControlStatement.branchingStructure;public class test2 {public static void main(String[] args) {// 这篇test2对应note1// 利用if语句的第一种格式// 这个知识点做题//题目://汽车无人驾驶会涉及到大量的判断//当汽车行驶的时候遇到了红绿灯,就会进行判断//如果红灯亮,就停止//如果黄灯亮,就减速//如果绿灯亮,就行驶// 分析:// 1.有三个灯,那就定义三个变量// 2.如果..就..如果..就..如果..就..//   说明有很多种不同的情况//   那就要用到判断语句if//   用到判断语句那就说明定义变量时要用到boolean类型// 1.boolean red = false;boolean green = false;boolean yellow = true;// 2.if (red){System.out.println("停");}if (green){System.out.println("行");}if (yellow){System.out.println("等一等");}System.out.println("^^");}
}
package com.angus.processControlStatement.branchingStructure;import java.util.Scanner;public class test3 {public static void main(String[] args) {// 这篇test3对应note1// 利用if语句的第二种格式// 这个知识点做题// 二选其一或者多选其一的时候我们就用这个知识点//题目:/*键盘录入一个整数,表示身上的钱。如果大于等于100块,就是网红餐厅。否则,就吃经济实惠的沙县小吃。*/// 分析:// 1.键盘录入说明要用到变量// 2.大于等于说明要用到关系运算符更加说明要进行判断因为关系运算符要么输出true要么输出false那也就是说还要用到boolean类型因为上面说了要用到变量// 如果..否则..说明要用到if else语句,因为要二选其一嘛Scanner scanner = new Scanner(System.in);System.out.println("录入一个整数,表示身上的钱");int money = scanner.nextInt();boolean re = money >= 100;if(re){System.out.println("网红餐厅");} else {System.out.println("沙县小吃");}System.out.println("^^");}
}
package com.angus.processControlStatement.branchingStructure;import java.util.Scanner;public class test4 {public static void main(String[] args) {// 这篇test4对应note1// 利用if语句的第二种格式// 这个知识点做题// 如果需要选择不同的情况进行输出我们就用这个知识点//题目:/*假设,用户在超市实际购买,商品总价为:600元。键盘录入一个整数表示用户实际支付的钱。如果付款大于等于600,表示付款成功。否则付款失败。*/// 分析:// 1.键盘录入->变量// 2.大于等于->关系运算符->判断->boolean// 3.如果..否则..->是不同情况需要进行输出Scanner scanner = new Scanner(System.in);System.out.println("录入一个整数表示用户实际支付的钱");int money = scanner.nextInt();boolean re = money >= 600;if (re){System.out.println("付款成功");} else {System.out.println("付款失败");}System.out.println("^^");}
}
package com.angus.processControlStatement.branchingStructure;import java.util.Scanner;public class test5 {public static void main(String[] args) {// 这篇test5对应note1// 利用if语句的第二种格式// 这个知识点做题// 如果需要选择不同的情况进行输出我们就用这个知识点//题目:/*在实际开发中,电影院选座也会使用到if判断。假设某影院售卖了100张票,票的序号为1~100。其中奇数票号坐左侧,偶数票号坐右侧。键盘录入一个整数表示电影票的票号。根据不同情况,给出不同的提示:如果票号为奇数,那么打印坐左边如果票号为偶数,那么打印坐右边。*/// 分析:// 1.键盘录入->变量// 2.不同的情况->判断->关系运算符->boolean// 3.不同的情况->if语句的第二种格式if else语句// 4.票的序号为1~100,说明有限制,要用到逻辑运算符来解决限制问题 事后分析: 票的序号为1~100,说明键盘录入的值也要进行判断,判断就想到关系运算符和boolean,判断之后进行不同的操作,说明要用到if语句的第二种格式if else语句Scanner scanner = new Scanner(System.in);System.out.println("键盘录入一个整数表示电影票的票号,票的序号为1~100");int piaoHao = scanner.nextInt();// 注意: 票的序号为1~100。// 注意: 票的序号为1~100。// 1.用boolean类型来解决 2.用三元运算符来解决// boolean boolean boolean yyde// 用三元运算符写这个题没把老子累死,而且最后还是没逃过我喜欢的 boolean//1.用boolean类型来解决boolean re = piaoHao >= 1 && piaoHao <=100;if(re){re = piaoHao % 2 == 0;// 只有一个判断语句,这里就判断完了,所以要时刻注意看看这里到底是不是写明白了是判断语句,要么输出true,要么输出false,不能输出其他的if (re){System.out.println("坐右边");} else {System.out.println("坐左边");}} else {System.out.println("输入错误");}//        //2.用三元运算符来解决
//        String re1 = "正确";
//        String re2 = "错误";
//        String re = piaoHao >= 1 && piaoHao <=100 ? re1 : re2 ;
//        if(re == "正确"){
//
//            // 下面的判断语句,可用boolean,也可用字面量
//            // 到头来还是逃不过这一步,我更喜欢用boolean
//            // 不过我还是把字面量的用法给一下
//            // if (piaoHao % 2 == 0){
//            boolean result = piaoHao % 2 == 0;
//            if (result){
//                System.out.println("坐右边");
//            } else {
//                System.out.println("坐左边");
//            }
//
//        } else {
//            System.out.println("输入错误");
//        }// 总结: 这叫做if的嵌套,就是根据题目来判断要不要不断套娃System.out.println("^^");}
}
package com.angus.processControlStatement.branchingStructure;import java.util.Scanner;public class test6 {public static void main(String[] args) {// 这篇test6对应note1// 利用if语句的第三种格式// 这个知识点做题//题目:/*根据不同的分数送不同的礼物。如果是95~100分,送自行车一辆如果是90~94分,游乐场玩一天如果是80~89分,送变形金刚一个。如果是80分到0分,揍一顿。*/// 不分析了,直接写Scanner scanner = new Scanner(System.in);System.out.println("输入分数");int fenShu = scanner.nextInt();// 多个嵌套就不使用boolean类型了,使用了反而变得麻烦,前面我咋没注意到嘞// else是备胎,前面说的各个是分开的,其实也不完全正确,真正分开的是第一个if语句和最开始的第一个else语句,只是将第一个else语句放到了最后,这就是对应着if else语句// 如果有嵌套,要用到if else语句和else if语句,那就说明第一个if语句要将这两个语句包起来,实质分开的就是那个最开始的else语句,但是我们写的格式并没有清晰表明这种情况,需要自己悟if (fenShu >= 95 && fenShu <= 100) {System.out.println("送自行车一辆");//语句体1;} else if (fenShu >= 90 && fenShu <= 94) {System.out.println("游乐场玩一天");//语句体2;} else if (fenShu >= 80 && fenShu <= 89) {System.out.println("送变形金刚一个");//语句体3;} else if (fenShu >= 0 && fenShu <= 80) {System.out.println("揍一顿");//语句体4;}else {System.out.println("输入错误");//语句体n+1;}// 总结: 看来一味地使用boolean类型也不一定正确//      就比如上面这个例子,如果使用boolean类型定义变量再输出,就会变得非常冗杂,而且效率也很慢//      所以说遇到不同的情况就要考虑不同的方法,有时候经常使用的那个方法,也不一定是最简便的,甚至还可能会使题目(事件)的难度上升System.out.println("^^");}}

先学到这了,我要睡觉去了

2. 随笔笔记

1.

流程图

2.

流程图

3.

流程图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/665088.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于SpringBoot Vue超市管理系统

大家好✌&#xff01;我是Dwzun。很高兴你能来阅读我&#xff0c;我会陆续更新Java后端、前端、数据库、项目案例等相关知识点总结&#xff0c;还为大家分享优质的实战项目&#xff0c;本人在Java项目开发领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目&#x…

Java 数据结构 二叉树(一)二叉查询树

目录 树的种类 二叉树 二叉查找树 满二叉树 ​编辑 完全二叉树 二叉树的数据存储 链式存储 数组存储 寻址方式&#xff1a; 二叉树的遍历&#xff08;了解即可&#xff09; ​编辑 二叉查询树缺点 前言-与正文无关 生活远不止眼前的苦劳与奔波&#xff0c;它还充满…

人大金仓将在未来产业创新发展中扮演更加重要的角色

1月29日&#xff0c;工信部等七部门联合发布《关于推动未来产业创新发展的实施意见》&#xff0c;指出面向未来制造、未来信息、未来材料、未来能源、未来空间、未来健康等六大重点方向&#xff0c;将发挥新型举国体制优势&#xff0c;引导地方结合产业基础和资源禀赋&#xff…

专业139总分400+南昌大学811信号与系统考研经验电子信息与通信工程集成电路

今年专业课811信号与系统139分&#xff0c;总分400&#xff0c;顺利上岸南昌大学&#xff0c;回首这一年的复习&#xff0c;有很多经验想和大家分享&#xff0c;希望对大家复习会有一些帮助。专业课&#xff1a;139分&#xff0c;811信号与系统 主要参考书&#xff1a;《信号与…

python pygame实现倒计时

实现思路 获取开始时间、当前时间&#xff0c;通过当前时间-开始时间时间差&#xff0c;再通过倒计时的总时长-时间差即可实现&#xff01; 随着时间的流逝&#xff0c;当前时间会变大&#xff0c;也就导致时间差会变大&#xff0c;当使用总时长-时间差的时候&#xff0c;得到…

算法41:掉落的方块(力扣699题)----线段树

题目&#xff1a;https://leetcode.cn/problems/falling-squares/description/ 在二维平面上的 x 轴上&#xff0c;放置着一些方块。 给你一个二维整数数组 positions &#xff0c;其中 positions[i] [lefti, sideLengthi] 表示&#xff1a;第 i 个方块边长为 sideLengthi &…

027 方法的定义及调用

方法的定义 方法调用 设计方法的原则 使用场景 想象一下有个场景需要我们不断频繁地去使用某部分特定的代码&#xff0c;我们自然可以通过复制粘贴去完成&#xff0c;但是这样会导致代码又臭又长&#xff0c;大部分是重复的代码&#xff0c;这不利于我们后续的维护&#xff0c;…

2分钟搭建FastGPT训练企业知识库AI助理(Docker部署)

我们使用宝塔面板来进行搭建,更方便快捷灵活,争取操作时间只需两分钟 宝塔面板下安装Docker 在【软件商店中】安装【docker管理器】【docker模块】即可 通过Docker安装FastGPT 通过【Docker】【添加容器】【容器编排】创建里新增docker-compose.yaml 以下是模板内容 仅需…

【C++入门到精通】C++的IO流(输入输出流) [ C++入门 ]

阅读导航 引言一、C语言的输入与输出二、流是什么三、CIO流1. C标准IO流&#xff08;1&#xff09;istream&#xff08;2&#xff09;ostream&#xff08;3&#xff09;iostream&#xff08;4&#xff09;cin 和 cout 2. C文件IO流&#xff08;1&#xff09;ifstream&#xff0…

028 方法的重载

方法重载的定义 使用案例 public static void main(String[] args) {// 匹配到max(int a, int b)System.out.println(max(1, 3));// 匹配到max(double a, double b)System.out.println(max(1L, 3L));// 匹配到max(double a, double b, double c, double d)&#xff0c;int自动…

服了,一个ThreadLocal被问出了花

分享是最有效的学习方式。 博客&#xff1a;https://blog.ktdaddy.com/ 故事 地铁上&#xff0c;小帅无力地倚靠着杆子&#xff0c;脑子里尽是刚才面试官的夺命连环问&#xff0c;“用过TheadLocal么&#xff1f;ThreadLocal是如何解决共享变量访问的安全性的呢&#xff1f;你…

手机gif动图怎么操作?这个方法分分钟解决

手机上怎么制作gif动画&#xff1f;Gif动图是当下非常流行的一种表达方式&#xff0c;通过简单的画面循环就能够传达您的想法。但是&#xff0c;想要在手机上制作gif动画的时候应该怎么办呢&#xff1f;通过会用GIF动图在线编辑&#xff08;https://www.gif.cn/&#xff09;工具…

【循环结构·js】

变量命名原则 变量名由字母、下划线、$ 或数字组成&#xff0c;并且必须由字母、下划线、$ 开头。 变量名不能命名为系统关键字和保留字。 JS代码在sourse里面调试 document.write(str); /*在页面上输出变量 str 的值*/数据类型的分类 为什么要标识数据类型&#xff1a; 不…

Kubernetes Pod使用

Pod是Kubernetes中可以创建、调度和部署的最小&#xff0c;也是最简单的单元。Pod是基于Kubernetes部署和运维应用的基础。本文重点介绍下Pod各字段的含义及Pod的使用&#xff0c;关于Pod更多的知识细节可以参考Kubernetes Pod详解一文。 本文参考的主要内容来源于Kubernetes 1…

设计模式——2_1 命令(Command)

文章目录 定义图纸一个例子&#xff1a;空调和他的遥控器只有控制面板的空调遥控器可以撤销的操作 碎碎念命令和Runnable命令和事务 定义 把请求封装成一个对象&#xff0c;从而使你可以用不同的请求对客户进行参数化&#xff0c;对请求排队或记录请求日志&#xff0c;以及支持…

Linux文件结构

所有Linux系统的文件结构都是一样的&#xff0c;区别于win系统的c盘&#xff0c;d盘&#xff0c;他只有一个根目录“/”&#xff0c;下面的文件夹结构基本是一样的&#xff0c;如下&#xff0c;文件夹有“箭头”代表的是软链接&#xff0c;即该文件夹的位置不在此&#xff0c;右…

小米平板6获取root权限教程

1. 绑定账号 1> 打开"设置-我的设备-全部参数-连续点击MIUI版本按钮"&#xff0c;直到提示已打开开发者模式( p s : 这里需要重点关注红框平板型号和 M I U I 版本&#xff0c;例如我这里平板型号是 X i a o m i P a d 6 &#xff0c; M I U I 版本是 14.0.10 &am…

【开源】JAVA+Vue+SpringBoot实现就医保险管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 科室档案模块2.2 医生档案模块2.3 预约挂号模块2.4 我的挂号模块 三、系统展示四、核心代码4.1 用户查询全部医生4.2 新增医生4.3 查询科室4.4 新增号源4.5 预约号源 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVue…

酷开系统 | 酷开科技智慧AI带你领略神奇的世界

在这个科技日新月异的时代&#xff0c;AI已成为我们生活中不可或缺的一部分。它不仅改变了我们的生活方式&#xff0c;更让我们对未来充满期待。说起酷开系统中智慧AI的强大&#xff0c;着实让人叹为观止。无论是语音识别、数据整理还是语言处理&#xff0c;智慧AI都在不断地突…

MySQL数据库①_MySQL入门(概念+使用)

目录 1. 数据库的概念 1.1 数据库的存储介质 1.2 主流数据库 2. MySQL的基本使用 2.1 链接数据库 2.2 服务器管理 2.3 数据库&#xff0c;服务器和表关系 2.4 简单MySQL语句 3. MySQL架构 4. SQL分类 5. 存储引擎 本篇完。 1. 数据库的概念 数据库是按照数据结构来…