回顾Java基础2
时间:2021-07-11
本文章向大家介绍回顾Java基础2,主要包括回顾Java基础2使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
编程思想
编程思想实例1
打印1~100之间所有是9的倍数的整数,统计个数及总合
- 化繁为简
- 完成输出1~100的值
- 输出的过程中,进行过滤,只输出9的倍数,i % 9 ==0
- 统计个数,定义一个变量int count = 0,条件满足时,count++
- 总和,定义一个变量 int sum = 0;条件满足时,sum += i
- 先死后活
- 为了适应更好的需求,把范围的开始的值和结束的值,做出变量。开始的1和结束的100,让我们可以更好的更改需求
- 更进一步,把9的倍数也做成变量 int t = 9
int count = 0;
int sum = 0;
int start = 1;
int end = 100;
int t = 9;
for(int i = start;i <= end;i++){
if(i % t == 0){
System.out.println(i);
count++;
sum += i;
}
}
多重循环控制
嵌套循环
- 一般使用两层,最多不要超过3层,可读性很差。
嵌套循环就是把内层循环当成外层循环的循环体。只有内层循环循环完毕,循环条件为false时,才会跳出内层循环,结束外层循环的当次循环,开启下一次的循环。
循环代码练习1
-
统计3个班成绩情况,每个班有5名同学
-
求出每个班的平均分和所有班级的平均分【学生的成绩从键盘输入】
-
统计三个班及格人数,每个班有5名同学
-
思路分析
- 化繁为简:将复杂的需求,拆解成简单的需求,逐步完成
- 先计算一个班级,5个学生的成绩和平均分
- 创建Scanner对象接收用户输入
- 得到该班的平均分,定义一个double sum把该班5个学生的成绩累计
- 统计三个班(每班5个学生)的平均分
- 定义一个变量,double totalScore累计所有学生的成绩
- 当多重循环结束后,totalScore/(3*5)
- 统计三个班几个人数
- 定义变量 int passNum = 0;当有一个学生成绩>=60时,passNum++
- 先计算一个班级,5个学生的成绩和平均分
- 化繁为简:将复杂的需求,拆解成简单的需求,逐步完成
-
先死后活:先考虑固定的值,然后转成可以灵活变化的值
- 把定义的常量分别定义一个新的变量来接收。
- 然后可根据业务需求,变换变量即可。
Scanner myScanner = new Scanner(System.in); //1.1
int sumAll = 0; //3.4
int passNum = 0; //4.2
for(j = 1; j <=3 ; j++){ //3.2
int sum = 0; //计算一个班级的总分,如果外层循环重置,总分归0 //2.2
for(int i = 1;i <= 5;i++){ //1.2
System.out.println("请输入第" + i + "个学生的成绩"); //1.3
//然后定义一个成绩接收键盘输入并输出 //1.4
double score = myScanner.nextDouble(); //1.5
System.out.println("第" + i + "个学生的成绩为" + score); //1.6
if(score >= 60){ //4.2
passNum++;
}
sum += score; //2.3
}//平均分应该在一个班级循环完毕后输出,要在循环前定义,在循环内取值 //2.1
System.out.println(j+"班平均分为" + sum / 5); //2.4
sumAll += sum; //3.5
}
//第一个班级完成,现在统计三个班,套一层循环 //3.1
//所有班级的平均分,应该在外层循环完之后输出,所以在外层循环前定义 //3.3
System.out.println("总平均分为"+sumAll/15); //3.6
//判断及格人数,外层循环完毕后输出,循环开始前定义,跟在分数后面判断 //4.1
System.out.println("及格人数为"+passNum); //4.3
循环代码练习2
打印空心金字塔
韩顺平p137
动手写!!!
好记性不如烂笔头
原文地址:https://www.cnblogs.com/lxycc/p/14999772.html
- phalcon-入门篇2(HelloWord与PhalconTools)
- 数据库中间件 Sharding-JDBC 源码分析 —— SQL 解析(一)之语法解析
- phalcon-入门篇4(log日志和session缓存)
- zephir-(5)类型
- zephir-(10)内置函数
- zephir-(9)类和对象2
- 深度学习中的动手实践:在CIFAR-10上进行图像分类
- 数据库中间件 MyCAT源码分析 —— XA分布式事务
- [喵咪Golang(1)]Go语言开篇
- phalcon-进阶篇2(拦截器)
- 【死磕Java并发】—–深入分析synchronized的实现原理
- phalcon-进阶篇1(过滤与清理)
- phalcon-入门篇9(view层基础使用)
- PhalApi视频教程
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Spring使用注解配置依赖注入
- Spring的依赖注入
- 通过Jenkins发布php代码
- 初识Spring
- 使用Python的BeautifulSoup库实现一个可以爬取1000条百度百科数据的爬虫
- 初识Spark
- 初识SpringBoot
- MyBatis结果集映射
- Hadoop分布式集群环境搭建
- 使用Hadoop统计日志数据
- Mybatis在接口上使用注解配置SQL语句以及接口与xml一起使用
- 分布式计算框架MapReduce
- 安装webpack后,执行webpack -v命令时报错:SyntaxError: Block-sc
- SpringMVC数据类型转换器与国际化配置
- 分布式资源调度——YARN框架