中南林业科技大学Java实验报告四:语句
JAVA 语句 科技 大学 实验报告
2023-09-27 14:28:48 时间
实验4:语句
4.1 实验目的
- 掌握for循环的结构和使用方法;
- 掌握while循环的结构和使用方法;
- 掌握switch分支语句的结构和使用方法;
4.2 实验内容
4.2.1 用for循环实现1到50的求和;
【前提引入】
- 本题有两种方法
- for循环累加
- 高斯求和
- 值得注意的是:根据阿里巴巴开发规范,我们不应该使用魔法值,即 for(int i = 1;i <=50;i++) 中的50是一个魔法值
- for 的 循环迭代条件 i++ 我们也可以改为 ++i ,前置加加的效率优于后置加加。
【运行流程】
public static void main(String[] args) {
//定义加到的最大值,根据阿里巴巴开发规范,我们应该避免魔法值,因此不在for循环的循环条件中直接指定
int n = 50;
//计算和
int sum = 0;
//从 1 开始累加,知道50
for (int i = 1; i <= n; i++) {
sum += i;
}
//输出 sum 的值,即1到50的累加总和
System.out.println(sum);
}
4.2.2 从键盘输入10~20中的任意整数,然后用while循环实现该数到50的累加和。
【前提引入】
-
while循环,先判断后复制
-
我们采用
print()
方法而非println
方法,目的是不换行 -
深入一点的谈,在开发中,我们的正式环境下的代码一定要避免使用
System.out.println()
这样的测试语句,因为在底层大量使用到了同步锁,导致资源占用与时间浪费。
【运行流程】
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("输入一个10~20之间的整数:");
//保存从键盘输入的整数
int temp = scanner.nextInt();
//统计和,初始化为0
int sum = 0;
//累计极限值,先定义是为了避免魔法值
int max = 50;
while (temp <= max) {
sum += temp;
++temp;
}
System.out.println(sum);
}
4.2.3 从键盘输入1到4,用switch语句判断该班级到底为本专业的那1班(PS:输出的内容为2020级软件工程X班,其中X为键盘输入的数字的大写如1对应一)。
【前提引入】
- switch的一些说明
- 表达式数据类型,应当和case后的常数
类型一致
,或者是常数可以自动转换成可以相互比较的类型 - switch(表达式)中表达式的返回值必须是:
byte
,short
,int
,char
,String
,Enum
- case子句中的值必须是常量,而不能是变量
- 特别注意 break ,切记要写
- 表达式数据类型,应当和case后的常数
- 有关于Scanner
- 导入类所在的包:import java.util.Scanner;
- 创建该类对象(声明变量):Scanner scanner = new Scanner(System.in);
- 调用里面的功能
scanner.nextInt()
:可以输入一个整数scanner.nextFloat()
:可以输入一个单精度浮点数scanner.next()
:可以输入字符串,返回类型是字符串对象,通过charAt(0)
可获取第一个字符scanner.nextBoolean()
:可以输入一个布尔型
- 释放资源,Scanner也是IO输入流:scanner.close();
【运行流程】
public static void main(String[] args) {
//创建一个扫描器(对象)
Scanner scanner = new Scanner(System.in);
System.out.print("输入一个1~4之间的整数:");
//保存从键盘输入的整数
int temp = scanner.nextInt();
switch (temp){
case 1:
System.out.println("2020级软件工程一班");
break;
case 2:
System.out.println("2020级软件工程二班");
break;
case 3:
System.out.println("2020级软件工程三班");
break;
case 4:
System.out.println("2020级软件工程四班");
break;
default:
System.out.println("错误的输入!!!");
}
//释放资源
scanner.close();
}
【总结】
- 关于循环语句,无论是 while ,do … while 还是 for,都离不开循环四要素:
循环变量初始化
,循环条件
,循环变量迭代
,循环操作
- 写循环语句的时候,建议一般使用两层即可,最多不要超过三层,否则代码的可读性非常差。
- switch 与 if 的选择
- 如果判断的具体数值不多,而且符合 byte,short,int,enum,char,String这六种类型,建议使用 switch类型
- 对于区间判断,对结果为 boolean 类型判断,使用if。if的使用范围更为广泛。
相关文章
- Java中的结构语句
- 【JAVA】条件判断语句合集(源代码实例,入门参考)
- JAVA定义栈告警提示:“Stack is a raw type. References to generic type Stack<E> should be parameterized”
- Java循环语句详解(Java必备知识)
- Java核心技术卷I基础知识3.8.5 多重选择:switch语句
- [转]java List和数组相互转换方法
- Error java 错误 不支持发行版本5 ( 完美解决版)
- 资深Java面试题及答案(汇总)
- 阿里P8熬了一个月肝出这份32W字Java面试手册,在Github标星31K+
- 系统学习JAVA第七天(流程控制语句、方法、冒泡排序、二分查找)
- 基于Java实现Android 蛤蛤连连看有APP【100010567】
- JVM中java实例对象在内存中的布局
- Java 7 新的 try-with-resources 语句,自动资源释放
- java 自动关闭资源的try语句
- java Iterator Fail-fast机制
- 将java的jar包作为windows的服务来启动
- Java高效读取大文件
- java学习笔记(5) 控制语句、键盘输入
- Java基础篇:数组
- 深入Java设计模式之释器模式
- Java EE HTML5 WebSocket 示例
- 【Java】Java学习笔记-控制语句
- 华为OD机试 -字母计数(Java) | 机试题+算法思路+考点+代码解析 【2023】
- Java高手速成│编写你第一个数据库程序
- JavaSE入门学习6:Java基础语法之运算符和语句(上)
- Java执行sql语句并获取指定返回值
- 《编程导论(Java)·3.2.4 循环语句》
- php和java的memcached使用的兼容性问题解决过程
- 从零学Java(23)之 for 语句
- Java小白入门200例42之 switch case语句
- Java小白入门200例48之 continue语句详解
- Java //EX2.15 设page是Graphics类的一个对象,编写一条语句画一条从(20, 30)到(50, 60)的线
- Android 在Java代码中设置style属性,以ProgressBar为例