中南林业科技大学Java实验报告四:语句

简介: 中南林业科技大学Java实验报告四:语句

实验4:语句

4.1 实验目的

  1. 掌握for循环的结构和使用方法;
  2. 掌握while循环的结构和使用方法;
  3. 掌握switch分支语句的结构和使用方法;

4.2 实验内容

4.2.1 用for循环实现1到50的求和;

【前提引入】

  • 本题有两种方法
  1. for循环累加
  2. 高斯求和
  • 值得注意的是:根据阿里巴巴开发规范,我们不应该使用魔法值,即 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的一些说明
  1. 表达式数据类型,应当和case后的常数类型一致,或者是常数可以自动转换成可以相互比较的类型
  2. switch(表达式)中表达式的返回值必须是:byteshortintcharStringEnum
  3. case子句中的值必须是常量,而不能是变量
  4. 特别注意 break ,切记要写
  • 有关于Scanner
  1. 导入类所在的包:import java.util.Scanner;
  2. 创建该类对象(声明变量):Scanner scanner = new Scanner(System.in);
  3. 调用里面的功能
  • scanner.nextInt():可以输入一个整数
  • scanner.nextFloat():可以输入一个单精度浮点数
  • scanner.next():可以输入字符串,返回类型是字符串对象,通过charAt(0)可获取第一个字符
  • scanner.nextBoolean():可以输入一个布尔型
  1. 释放资源,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 的选择
  1. 如果判断的具体数值不多,而且符合 byte,short,int,enum,char,String这六种类型,建议使用 switch类型
  2. 对于区间判断,对结果为 boolean 类型判断,使用if。if的使用范围更为广泛。


相关文章
|
9月前
|
消息中间件 机器学习/深度学习 Java
java 最新技术驱动的智能教育在线实验室设备管理与实验资源优化实操指南
这是一份基于最新技术的智能教育在线实验室设备管理与实验资源优化的实操指南,涵盖系统搭建、核心功能实现及优化策略。采用Flink实时处理、Kafka消息队列、Elasticsearch搜索分析和Redis缓存等技术栈,结合强化学习动态优化资源调度。指南详细描述了开发环境准备、基础组件部署、数据采集与处理、模型训练、API服务集成及性能调优步骤,支持高并发设备接入与低延迟处理,满足教育机构数字化转型需求。代码已提供下载链接,助力快速构建智能化实验室管理系统。
242 44
|
算法 搜索推荐 Java
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
这篇文章介绍了如何使用Java后端技术,结合Graphics2D和Echarts等工具,生成包含个性化信息和图表的海报,并提供了详细的代码实现和GitHub项目链接。
1070 0
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
|
JSON 安全 前端开发
第二次面试总结 - 宏汉科技 - Java后端开发
本文是作者对宏汉科技Java后端开发岗位的第二次面试总结,面试结果不理想,主要原因是Java基础知识掌握不牢固,文章详细列出了面试中被问到的技术问题及答案,包括字符串相关函数、抽象类与接口的区别、Java创建线程池的方式、回调函数、函数式接口、反射以及Java中的集合等。
236 0
|
数据采集 人工智能 监控
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
232 0
|
消息中间件 Java Kafka
【Azure 事件中心】在微软云中国区 (Mooncake) 上实验以Apache Kafka协议方式发送/接受Event Hubs消息 (Java版)
【Azure 事件中心】在微软云中国区 (Mooncake) 上实验以Apache Kafka协议方式发送/接受Event Hubs消息 (Java版)
447 1
|
人工智能 网络协议 Java
23.12月中旬 上海寻序人工智能科技-上海嘉定-Java开发实习生-薪资150-230/d 面经
关于上海寻序人工智能科技有限公司Java开发实习生岗位的面试经验分享,涵盖了技术问题如对象存储MinIO、ArrayList扩容、Object类方法、hashCode和equals方法、处理哈希冲突、JVM垃圾回收器、GC算法、网络协议、邮件协议、HTTP请求方法、Linux和Docker命令、Dockerfile制作等。
|
分布式计算 安全 Java
Java帝国的无限魅力:揭秘这门万能编程语言如何征服科技世界,从Web到太空探索,Java的触角无处不在!
【8月更文挑战第12天】随着信息技术的发展,编程语言成为科技核心。Java以其成熟与广泛应用,在众多语言中脱颖而出。它支持跨平台运行,实现“一次编写,处处运行”。Java的面向对象特性促进代码复用与维护,内置的安全机制保障系统安全。Java应用于Web开发、大数据处理、移动应用等多个领域,展现了其不可替代的价值。
154 1
|
Java
Java程序设计实验3 | 面向对象(上)(二)
分数的分子和分母用两个整型数表示,类所拥有的方法包括对分数进行加、减、乘、除等运算,以及输出分数的方法,输出分数的格式应该是:分子/分母。
190 0
|
Java
Java程序设计实验3 | 面向对象(上)(一)
实验目的是理解和掌握面向对象编程的基本概念,包括类的声明、实例化和调用,方法及构造方法的定义,方法重载,值传递和地址传递,以及使用this关键字和static关键字。
191 0