“Java任务:方法重载之查找商品”的版本间的差异
来自CloudWiki
第112行: | 第112行: | ||
MainClass类: | MainClass类: | ||
<nowiki>package main; | <nowiki>package main; | ||
− | import entity. | + | import entity.*; |
− | |||
− | |||
public class MainClass { | public class MainClass { | ||
public static void main(String[] args) { | public static void main(String[] args) { | ||
− | + | int size=5; | |
− | + | Book[] books=new Book[size]; | |
− | + | books[0]=new Book("01","think in java","Bruce Eckel",50,"工具类",50.0f); | |
− | + | books[1]=new Book("02","JAVA核心技术","Cay S.Horstmann",40,"工具类",50.0f); | |
− | + | books[2]=new Book("03","射雕英雄传","金庸",30,"文学类",50.0f); | |
− | + | books[3]=new Book("04","平凡的世界","路遥",20,"文学类",50.0f); | |
− | + | books[4]=new Book("05","心理罪","雷米",60,"文学类",50.0f); | |
− | + | ||
− | + | BookDataSet dbset = new BookDataSet(size,books); | |
− | int size = 5; | + | //System.out.println("图书的具体信息是:"); |
− | + | //System.out.println(dbset.toString()); | |
− | + | System.out.println("查询方法1:"); | |
− | + | dbset.getBooks(); | |
− | + | ||
− | + | System.out.println("查询方法2:"); | |
− | + | Book b1 =dbset.getBooks("03"); | |
− | + | System.out.println(b1.toString()); | |
− | + | ||
− | + | ||
− | |||
} | } | ||
− | |||
− | }</nowiki> | + | } |
+ | </nowiki> | ||
返回 [[Java程序设计]] | 返回 [[Java程序设计]] |
2018年4月17日 (二) 03:06的版本
任务描述:查找图书
用户有时需要根据不同的条件来查询图书,比如编号、书名、作者、分类等。项目goodsmanage_console中的BookDaoImpl类提供了查询图书的方法。类中已经提供了两个版本的queryBook()方法,分别用于查询所有图书和指定编号的图书。你的任务是再提供一个queryBook()方法,根据指定书名、作者或分类来查询图书。
任务实现
数据库查询的细节会在后面的任务详细讲解。这里使用测试数据演示方法重载功能。
package entity; public class BookDataSet { /*书籍的总数*/ private int num; /*存放的书籍*/ private Book [] books; public BookDataSet(){ } public BookDataSet(int num,Book [] books){ this.num =num; this.books=books; } public void getBooks(){ System.out.println("站点商品明细:"); //显示所有书籍 for(int i=0;i<books.length;i++) { System.out.println(books[i]); } } public Book getBooks(String id){ // 遍历所有的书籍信息 for(int i=0;i<this.books.length;i++){ if (this.books[i].cid.equals(id)) { return this.books[i]; } } // 没有找到任何书籍信息抛出null return null; } @Override public String toString() { int i; String s=""; for(i=0;i<this.books.length;i++){ s +=this.books[i].toString(); } return s; } }
项目的其他方法
Book类:
package entity; public class Book { String bid; // 书籍编号 String name; // 书籍名字 String author; // 书籍作者 int number; // 书籍库存 float price;//书籍价格 String category; // 书籍详细分类(类目) /* * 空构造函数 */ public Book() { } /* * 含六个参数的构造函数 */ public Book(String bid, String name, String author, int number, String category,float price) { this.bid = bid;//这里的this表示本类的bid属性,也可以不加 this.name = name; this.author = author; this.number = number; this.category = category; this.price = price; } public float getPrice(){ return this.price; } public void setPrice(float p){ this.price=p; } public void ShowInfo() { System.out.println( "商品编号:" + this.bid + " | 商品名:" + this.name +" | 作者:" + this.author+ " | 类目:" + this.category + " | 商品总数:" + this.number+ " |商品价格:"+this.price); } @Override public String toString() { return "商品编号:" + this.bid + " | 商品名:" + this.name +" | 作者:" + this.author+ " | 类目:" + this.category + " | 商品总数:" + this.number+ " |商品价格:"+this.price+"\n"; } }
MainClass类:
package main; import entity.*; public class MainClass { public static void main(String[] args) { int size=5; Book[] books=new Book[size]; books[0]=new Book("01","think in java","Bruce Eckel",50,"工具类",50.0f); books[1]=new Book("02","JAVA核心技术","Cay S.Horstmann",40,"工具类",50.0f); books[2]=new Book("03","射雕英雄传","金庸",30,"文学类",50.0f); books[3]=new Book("04","平凡的世界","路遥",20,"文学类",50.0f); books[4]=new Book("05","心理罪","雷米",60,"文学类",50.0f); BookDataSet dbset = new BookDataSet(size,books); //System.out.println("图书的具体信息是:"); //System.out.println(dbset.toString()); System.out.println("查询方法1:"); dbset.getBooks(); System.out.println("查询方法2:"); Book b1 =dbset.getBooks("03"); System.out.println(b1.toString()); } }
返回 Java程序设计