最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java實現(xiàn)圖書檢索系統(tǒng)

 更新時間:2022年05月27日 13:57:16   作者:JAVA_NO.1  
這篇文章主要為大家詳細介紹了java實現(xiàn)圖書檢索系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

java模擬實現(xiàn)圖書檢索系統(tǒng) (基礎(chǔ)版),供大家參考,具體內(nèi)容如下

練習(xí)實現(xiàn)3個簡單的功能,沒有優(yōu)化,可以根據(jù)需求,自行添加想要實現(xiàn)的功能。

Book.java

package com.demo3;

public class Book {

? ? private int id;
? ? private String name;
? ? private double price;

? ? public Book(){}

? ? public Book(int id, String name, double price) {
? ? ? ? this.id = id;
? ? ? ? this.name = name;
? ? ? ? this.price = price;
? ? }

? ? public int getId() {
? ? ? ? return id;
? ? }

? ? public void setId(int id) {
? ? ? ? this.id = id;
? ? }

? ? public String getName() {
? ? ? ? return name;
? ? }

? ? public void setName(String name) {
? ? ? ? this.name = name;
? ? }

? ? public double getPrice() {
? ? ? ? return price;
? ? }

? ? public void setPrice(double price) {
? ? ? ? this.price = price;
? ? }


? ? public void showMess() {
? ? ? ? System.out.println("Book{" +
? ? ? ? ? ? ? ? "編號=" + getId() +
? ? ? ? ? ? ? ? ", 書名='" + getName() +
? ? ? ? ? ? ? ? ", 價格=" + getPrice() +
? ? ? ? ? ? ? ? '}');
? ? }
}

Tool.java

package com.demo3;

import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;

import java.math.BigDecimal;
import java.util.Arrays;

public class Tools {

? ? private Book[] books = new Book[20];


? ? private ?int size;

? ? public void init(){
? ? ? ? Book book1 = new Book(1,"老人與海",29.8);
? ? ? ? Book book2 = new Book(2,"狂人日記",36.7);
? ? ? ? Book book3 = new Book(3,"玫瑰的葬禮",19.2);
? ? ? ? Book book4 = new Book(4,"宇宙源頭",19.2);

? ? ? ? books[0]=book1;
? ? ? ? books[1]=book2;
? ? ? ? books[2]=book3;
? ? ? ? books[3]=book4;
? ? ? ? size=4;
? ? }

? ? public Book[] getBooks() {
? ? ? ? return books;
? ? }

? ? public void setSize(int size) {
? ? ? ? this.size = size;
? ? }

? ? /*根據(jù)編號查詢圖書*/
? ? public void fingBookById(Book[] books,int id){

? ? ? ? int i=0;
? ? ? ? while(i<size){
? ? ? ? ? ? if(books[i].getId()== id){
? ? ? ? ? ? ? ? System.out.println("檢索信息: ");
? ? ? ? ? ? ? ? System.out.println("-------------------Content----------------------");
? ? ? ? ? ? ? ? books[i].showMess();
? ? ? ? ? ? ? ? System.out.println("------------------------------------------------");
? ? ? ? ? ? ? ? ?break;
? ? ? ? ? ? }
? ? ? ? ? ? i++;
? ? ? ? }
? ? ? ? if(i>=size){
? ? ? ? ? ? System.out.println("暫無信息");
? ? ? ? }
? ? }

? ? /*根據(jù)價格查找圖書,返回一個新的數(shù)組*/
? ? public Book[] findBookeByPrice(Book[] books,double price){

? ? ? ? Book[] ?newBooks=new Book[books.length];
? ? ? ? int length=0;

? ? ? ? int i=0;
? ? ? ? int j=0;/*注意,這里添加一個j*/
? ? ? ? while(i<size){
? ? ? ? ? ? /*提高精度,這里用到了BigDecimal類*/
? ? ? ? ? ? BigDecimal x1 = new BigDecimal(books[i].getPrice());
? ? ? ? ? ? BigDecimal x2 = new BigDecimal(price);
? ? ? ? ? ? if(x1.floatValue()==x2.floatValue()){
? ? ? ? ? ? ? ? /*這里用到j(luò),而不是下標i,如果是下標i的話,則就會出現(xiàn)nullpointerexception異常,因為if程序體中的 i的取值不是連續(xù)的*/
? ? ? ? ? ? ? ? newBooks[j++]= books[i];
? ? ? ? ? ? ? ? length++;
? ? ? ? ? ? }
? ? ? ? ? ? i++;
? ? ? ? }

? ? ? ? /*這里用到了Array集合類中的copyRange靜態(tài)方法*/
? ? ? ? newBooks= Arrays.copyOfRange(newBooks,0,length);
? ? ? ? return newBooks;
? ? }
}

BookTest.java

package com.demo3;

import java.util.Scanner;

public class BookTest {

? ? public static void main(String[] args) {

? ? ? ? Scanner scanner = new Scanner(System.in);
? ? ? ? /*創(chuàng)建工具類,對其進行初始化*/
? ? ? ? Tools tool = new Tools();
? ? ? ? tool.init();

? ? ? ?prof: while(true) {
? ? ? ? ? ? System.out.println("========圖書檢索系統(tǒng)=======");
? ? ? ? ? ? System.out.println("1,【編號檢索】 ?2,【價格檢索】 3,【退出】");
? ? ? ? ? ? System.out.print("【輸入檢索【類型】: ");

? ? ? ? ? ? int num = scanner.nextInt();

? ? ? ? ? ? while (true) {

? ? ? ? ? ? ? ? switch (num) {
? ? ? ? ? ? ? ? ? ? case 1:
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("進入圖書【編號】檢索:");
? ? ? ? ? ? ? ? ? ? ? ? System.out.print("輸入檢索【編號】: ");
? ? ? ? ? ? ? ? ? ? ? ? int checkId = scanner.nextInt();
? ? ? ? ? ? ? ? ? ? ? ? tool.fingBookById(tool.getBooks(), checkId);break;

? ? ? ? ? ? ? ? ? ? case 2:
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("進入圖書【價格】檢索");
? ? ? ? ? ? ? ? ? ? ? ? System.out.print("輸入檢索【價格】:");
? ? ? ? ? ? ? ? ? ? ? ? double price = scanner.nextDouble();
? ? ? ? ? ? ? ? ? ? ? ? Book[] books = tool.findBookeByPrice(tool.getBooks(),price);
? ? ? ? ? ? ? ? ? ? ? ? if(books.length>0){
? ? ? ? ? ? ? ? ? ? ? ? ? ? System.out.println("-------------------Content----------------------");
? ? ? ? ? ? ? ? ? ? ? ? ? ?for(Book book :books){
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?book.showMess();
? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ? ? ? ? ? System.out.println("------------------------------------------------");
? ? ? ? ? ? ? ? ? ? ? ? };break;
? ? ? ? ? ? ? ? ? ? case ?3:
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("退出成功");
? ? ? ? ? ? ? ? ? ? ? ? ?break prof;
? ? ? ? ? ? ? ? };
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
? ? }
}

程序執(zhí)行如下:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

镇江市| 宝鸡市| 马龙县| 长垣县| 巧家县| 定日县| 滁州市| 辽阳市| 土默特左旗| 贵南县| 湛江市| 安丘市| 抚州市| 同江市| 房山区| 腾冲县| 瑞安市| 双城市| 云南省| 徐汇区| 汶川县| 沭阳县| 叶城县| 资溪县| 剑河县| 上林县| 新闻| 汕头市| 凌源市| 田林县| 广宗县| 大埔县| 道真| 嘉祥县| 兴仁县| 如东县| 滕州市| 大足县| 拉萨市| 理塘县| 温泉县|