自测代码(方法与面向对象的应用【求区间质数、求100个随机数中的最小数、阶乘、图书管理类的应用】)-2021-7-21

本文主要是介绍自测代码(方法与面向对象的应用【求区间质数、求100个随机数中的最小数、阶乘、图书管理类的应用】)-2021-7-21,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MyClass类

package com.qianfeng.day07;public class MyClass {//输出三角形的行数public void printTriangle(int n) {for (int i = 1; i <= n; i++) {for (int j = 0; j < 2*i-1; j++) {System.out.print("*");}System.out.println();}}//返回区间[left,right]中质数的个数public int primeNumber(int left, int right) {int number = 0;for (int i = left; i <= right; i++) {int j;for (j = 2; j < i; j++) {if (i%j == 0) {break;}}if (i == j) {number++;}}return number;}//返回100个随机数中的最小值public int randomNumber(int n) {int min;int[] number = new int[100];for (int i = 0; i < 100; i++) {number[i] = (int)(Math.random()*n+1);}min = number[0];for (int i = 0; i < number.length; i++) {if (number[i] < min) {min = number[i];}}return min;}//求一个数的阶乘public int factorial(int n) {int number = 1;for (int i = 1; i <= n; i++) {number = number * i;}return number;}
}

LibraryManager类

package com.qianfeng.day07;public class LibraryManager {String[] bookNames = new String[10];double[] price = new double[10];public LibraryManager() {this.bookNames[0] = "老人与海";this.price[0] = 32;this.bookNames[1] = "活着";this.price[1] = 27;this.bookNames[2] = "红与黑";this.price[2] = 21;this.bookNames[3] = "西游记";this.price[3] = 26;this.bookNames[4] = "水浒传";this.price[4] = 28;this.bookNames[5] = "三国演义";this.price[5] = 30;this.bookNames[6] = "红楼梦";this.price[6] = 36;this.bookNames[7] = "小王子";this.price[7] = 38;this.bookNames[8] = "悲惨世界";this.price[8] = 40;this.bookNames[9] = "巴黎圣母院";this.price[9] = 42;}//1.根据传入的书名查找某本书的价格并返回给用户(如果图书不存在则显示没有这本书)public double inquire(String bookName) {double price = 0;for (int i = 0; i < 10; i++) {if (bookName == this.bookNames[i]) {price = this.price[i];}}if (price == 0) {System.out.println("查无此书");}return price;}//2.向客户展示目前所有的图书信息public void printBook() {for(int i = 0; i < 10; i++) {System.out.println("第" + (i+1) + "本书为:" + this.bookNames[i] + ",价格为:" + this.price[i]);}}//3.显示单价最高的前3本书的信息(书名和价格)public void maxPrice() {double temp;//备份价格表double[] xprice = new double[10];for (int i = 0; i < xprice.length; i++) {xprice[i] = this.price[i];}//冒泡排序选出最大的三个数在数组最后for (int i = 0; i < 3; i++) {for (int j = 0; j < 10-1; j++) {if (xprice[i] > xprice[i+1]) {temp = xprice[i];xprice[i] = xprice[i+1];xprice[i+1] = temp;}}}System.out.println("价格最高的三本书信息如下:");//将最大的三个价格与原来价格表进行比较,选出其对应书籍for (int i = 9; i > 6; i--) {for (int j = 0; j < 10; j++) {if (xprice[i] == this.price[j]) {System.out.print("本书为:" + this.bookNames[j]);}}System.out.println(",价格为:" + xprice[i]);}}//4.根据传入的书名删除这本书,删除完成后显示一下最新的图书情况public void deleteBook(String bookName) {int index = 0;for (int i = 0; i < 10; i++) {if (bookName == this.bookNames[i]) {index = i;}}for (int i = index; i < 9; i++) {this.bookNames[i] = this.bookNames[i+1];this.price[i] = this.price[i+1];}for (int i = 0; i < 9; i++) {System.out.println(this.bookNames[i] + "价格为:" + this.price[i]);}}}

work类(测试类)

package com.qianfeng.day07;public class Work {public static void main(String[] args) {MyClass myClass = new MyClass();//输出三角形行数System.out.println("输入的行数是:5");myClass.printTriangle(5);System.out.println();//返回区间质数的个数System.out.println("区间是[1,100]");System.out.println("有:"+ myClass.primeNumber(1, 10) + "个质数");System.out.println();//返回一百个随机数的最小值System.out.println("随机数设置为:1000");System.out.print("最小的那个随机数为:");System.out.println(myClass.randomNumber(1000));System.out.println();//返回一个数的阶乘System.out.print("5!=");System.out.println(myClass.factorial(5));System.out.println("\n\n");//测试图书管理类LibraryManager libraryManager = new LibraryManager();System.out.print("查询的书是红与黑,价格为:");System.out.println(libraryManager.inquire("红与黑"));System.out.println();System.out.println("所有书籍信息为");libraryManager.printBook();System.out.println();libraryManager.maxPrice();System.out.println();System.out.println("删除的书籍为活着");libraryManager.deleteBook("活着");}}

这篇关于自测代码(方法与面向对象的应用【求区间质数、求100个随机数中的最小数、阶乘、图书管理类的应用】)-2021-7-21的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/746270

相关文章

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

Spring Boot 3.4.3 基于 Spring WebFlux 实现 SSE 功能(代码示例)

《SpringBoot3.4.3基于SpringWebFlux实现SSE功能(代码示例)》SpringBoot3.4.3结合SpringWebFlux实现SSE功能,为实时数据推送提供... 目录1. SSE 简介1.1 什么是 SSE?1.2 SSE 的优点1.3 适用场景2. Spring WebFlu