2023年黑马Java入门到精通教程--编程思维训练

news2024/9/22 3:44:31

编程案例分享

编程思维

使用所学的Java技术解决问题的思维方式和编写代码实现出来的能力。

关于提升编程思维和编程能力的建议

编程思维和编程能力不是一朝一夕形成的,需要时间的沉淀和大量练习。

前期:先模仿,后期:再创新

具体措施:勤于练习代码,勤于思考,孰能生巧。

案例一:买飞机票

需求:

机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱。

机票最终优惠价格的计算方案如下:旺季(5-10月)头等舱9折,经济舱8.5折,淡季(11月到来年4月)头等舱7折,经济舱6.5折。

分析:

键盘录入机票的原价,仓位类型,月份信息,调用方法返回机票最终的优惠价格。

方法内部应该先使用if分支判断月份是是旺季还是淡季,然后使用switch分支判断是头等舱还是经济舱。

选择对应的折扣进行计算并返回计算的结果,如果信息录入有误返回价位为-1元代表即可。

总结:

1.遇到判断值匹配的时选择什么结构实现?

使用switch分支结构实现。

2.遇到判断区间范围的时候选择什么结构实现?

使用if分支结构实现。

案例二:找素数

说明

除了1和它本身以外,不能被其他正整数整除,就叫素数。

分析

101-200之间的数据可以采用循环依次拿到; 每拿到一个数,判断该数是否是素数。

判断规则是:从2开始遍历到该数的一半的数据,看是否有数据可以整除它,有则不是素数,没有则是素数。

如果最终判定是素数,即可输出展示。

总结:

1.本次案例中是如何确定出该数是素数的,具体如何实现?

定义了flag标记位

遍历2到该数的一半的数据去判断是否有整除的数据,有则改变falg标记位的状态。

最终通过flag的状态判断是否是素数。

案例三:开发验证码

总结:

1.随机验证码的核心实现逻辑是如何进行的?

定义一个String类型的变量存储验证码字符。

定义一个for循环,循环5次。

随机生成0|1|2的数据,依次代表当前位置要生成数字|大写字母|小写字母。

012交给switch生成对应类型的随机字符,把字符交给String变量。

循环结束后,返回String类型的变量即是所求的验证码结果。

案例四:数组元素的复制

需求:

把一个数组中的元素复制到另一个新数组中去。

分析:

需要动态初始化一个数组,长度与原数组一样。

遍历原数组的每个元素,依次赋值给新数组。

输出两个数组的内容。

总结:

1.数组的拷贝是什么意思?

需要创建新数组,把原来数组的元素赋值过来。

案例五:评委打分

总结:

1.如何实现评委打分案例? 

定义一个动态初始化的数组用于存储分数数据。

定义三个变量用于保存最大值、最小值和总和。

遍历数组中的每个元素,依次进行统计。

遍历结束后按照规则计算出结果即可。

案例七:模拟双色球[拓展案例]

双色球系统-业务分析、随机生成一组中奖号码

 双色球系统-用户输入一组双色球号码

模拟双色球系统-判断中奖情况

 总结:

1.本次案例中是如何去统计红球的命中数量的?

遍历用户的每个选号,然后遍历中奖号码的数组。

看当前选号是否在中奖号码中存在,存在则命中数量加1

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

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

相关文章

为游戏玩家提供卓越价值,英特尔锐炫游戏性能大幅提升!

2月1日晚英特尔推出锐炫显卡新版驱动(4086),相较此前驱动(3490)能够为DirectX 9游戏带来40%以上的平均性能提升。同时英特尔还宣布,现在起锐炫A750限量版显卡的全球价格将调整为249美元,此前上市价格为289美元起。 在英特尔发布锐炫显卡后&…

HTML5+CSS3(五)-全面详解(学习总结---从入门到深化)

目录 容器元素&#xff08;div&#xff09; 学习效果反馈 HTML5新增布局标签 学习效果反馈 视频和音频 视频 音频 source 学习效果反馈 HTML5新增标签 figure details mark meter datalist canvas 学习效果反馈 容器元素&#xff08;div&#xff09; <!DOCTYPE h…

k8s核心资源存储对象

一、简介 和docker类似&#xff0c;k8s也需要存储数据&#xff0c;比如redis和mysql都需要外部存储对象&#xff0c;要不然重新拉起pod&#xff0c;在其他机器上数据会消失。 二、NFS共享存储 NFS这个文件系统提供了远程挂载共享数据&#xff0c;我们可以利用这个文件系统来…

ASEMI整流模块MDA300-16封装,MDA300-16大小

编辑-Z ASEMI整流模块MDA300-16参数&#xff1a; 型号&#xff1a;MDA300-16 最大重复峰值反向电压&#xff08;VRRM&#xff09;&#xff1a;1600V 最大RMS电桥输入电压&#xff08;VRMS&#xff09;&#xff1a;1700V 最大平均正向整流输出电流&#xff08;IF&#xff0…

408计组巅峰之路:总线技术、总线仲裁

文章目录总线概念总线的基本概述总线分类标准①按数据传输格式②按总线功能&#xff08;连接的部件&#xff09;③按时序控制方式微机总线&#xff08;补充&#xff09;性能指标典型的计算机总线1.个人计算机总线测控机箱底板总线仪器与计算机互联总线PCI 总线局部总线1.PCI总线…

单片机复位详解

复位&#xff08;stm32f407ZGT6&#xff09;-属于中断操作共有三种类型的复位&#xff0c;分别为系统复位、电源复位和备份域复位。系统复位除了时钟控制寄存器 CSR 中的复位标志和备份域中的寄存器外&#xff0c;系统复位会将其它全部寄 存器都复位为复位值。只要发生以下事件…

纹理贴图原理与实践【图形学基础】

纹理贴图是 20世纪90 年代 CG 的主要创新之一。 它允许我们在不添加大量几何基元&#xff08;线、顶点、面&#xff09;的情况下添加大量表面细节。 想一想 Caroline 的 loadedDemo 的所有纹理映射是多么有趣&#xff1a; 推荐&#xff1a;使用 NSDT场景编辑器 快速搭建 3D场景…

树的重心(树和图的遍历--dfs)

树和图的存储&#xff1a; 定义h[N]&#xff0c;用来存储多个head指针。然后利用单链表的思想将数字插入进去。 void add( int a , int b ) { e[idx]b , ne[idx]h[a] , h[a]idx; } -----------------------------------------------------------------------------…

什么是类?怎样声明类的继承关系?

在现实生活中&#xff0c;说到继承&#xff0c;多会想到子女继承父辈的财产、事业等。在程序中&#xff0c;继承描述的是事物之间的所属关系&#xff0c;通过继承可以使多种事物之间形成一种关联体系。例如猫和狗都属于动物&#xff0c;程序中便可以描述为猫和狗继承自动物&…

从零开始的数模(十二)时间序列

目录 一、概念 1.2方法 二、基于python的时间序列 2.1移动平均法 2.2指数平滑法 2.3灰色预测 2.4灰色关联 2.5ARIMA模型 模型系 三、 基于matlab的时间序列 3.1移动平均法 3.2指数平滑法 一次指数平滑法 二次指数平滑法 一、概念 1.1带有时间的数据有哪些特殊性 带…

OAuthApp v2.2.3 更新 | 前端发布工具

OAuthApp 是一个前端发布工具&#xff0c;用于快速开发前端网页项目&#xff0c;并发布到服务器。具有引入脚本库就能使用服务端 API、在线发布 H5、站点数据独立存储的特性。 2023-2-3 主要更新 1&#xff0c;[修复] 站点文件功能&#xff0c;上传图片报错。 2&#xff0c;[新…

某FPS游戏飞天辅助及原理

FPS游戏先天的竞技性以及对战性决定了他必然有很多的BUG可以被利用又必须的去检测解决。 FPS游戏中有这样的外挂&#xff0c;飞在高空中打敌人,因为很少有人会注意头顶 躲在墙壁中攻击敌人&#xff0c;敌人根本无法看到高空墙壁中的人物。 那么胜利就很简单了。 FPS游戏能够…

4000字IB EE论文该怎么解决?

IB课程的Extend Essay&#xff0c;即EE拓展论文&#xff0c;是一篇基于六门学科课程的论文&#xff0c;需要学生在一年左右的时间里&#xff0c;完成一篇将近4000字&#xff08;中文为4800字&#xff09;的论文。该论文与某一门IB学科组课程相关。学生在论文中要体现自己对这门…

Windows Server 2022 Install Veeam Backup 12

Veeam Backup & Replication 是一款可靠的四合一解决方案&#xff0c;将备份、复制副本、存储快照和 CDP 复制副本统一在一款可靠的数据保护解决方案下&#xff0c;可助力实现数据保护现代化并消除停机。通过有效的勒索软件防护实现更快速、更灵活的恢复和保留选项&#xf…

seo网站内容优化有哪些(网站链接怎么做)

网站链接seo过程中&#xff0c;如果存在死链接会对网站造成影响吗&#xff1f;如果网站中有过多的死链接存在&#xff0c;会对网站产生什么样的影响呢&#xff1f;针对这个问题&#xff0c;小编就带大家一起来分析一下。 如果网站内存在着大量的死链接&#xff0c;当搜索引擎蜘…

vue2低代码平台搭建(二)揭秘页面设计器

前言 大家好,我是L丶Y。我们在上一篇文章中走进了低代码的世界,这一章节我们要开始干货内容了,来探索一下低代码开发的核心 —— 页面设计器。 我们知道,低代码开发平台都是通过拖拉拽可视化的页面设计器进行页面开发的,在这一章节,我们来探索一下页面设计器的实现方式…

在Manjaro平台安装flutter开发环境

安装flutter 安装flutter&#xff0c;配套的java建议使用openjdk 11。 yay -S flutter安装好以后注意看提示&#xff0c;还需要额外执行几条命令&#xff1a; sudo gpasswd -a ${USER} flutterusers newgrp flutterusers安装android studio yay -S android-studio配置andro…

yaml、yml:配置介绍及用法

目录 1、yaml介绍 2、yaml语法规则 3、yml显示自动提示 1、yaml介绍 YAML (YAML Ain t Markup Language) &#xff0c;一种数据序列化格式 优点: 1、容易阅读 2、容易与脚本语言交互 3、以数据为核心&#xff0c;重数据轻格式 YAML文件扩展名 .yml(主流) .yaml 2、ya…

2022年末29个省市区14企业征信机构分析及申请建议

2013年1月21日&#xff0c;国务院颁布了《征信业管理条例》(国务院令第631号)&#xff0c;自2013年3月15日起施行。该条例要求设立经营企业征信业务的征信机构&#xff0c;自公司登记机关准予登记之日起30日内向所在地的国务院征信业监督管理部门派出机构办理备案。后陆续出台了…

ubuntu 下的opencv3的下载与实现简单功能

看自己用户的名字 whoami 例子1&#xff1a; #include <stdio.h> #include <opencv2/opencv.hpp>using namespace std; using namespace cv;int main() {cv::Mat image;namedWindow("DebugWindow", WINDOW_NORMAL); resizeWindow("DebugWindow&q…