问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求java程序 遍历图书

发布网友 发布时间:2022-12-14 10:15

我来回答

5个回答

热心网友 时间:2024-11-17 18:57

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Set;

/**
 * 有10本图书,2个属性:名称和ISBN号,将10本图书存放到一个Set容器中, 
 * 要求:(1)遍历容器中的10本图书,分别输出他们的基本信息 
 * (2)将Set容器中的对象全部放到一个list容器中,实现从小到大的排序后再将其按顺序输出
 * 
 * @author kevin
 * 
 */
public class TestBook {
/**
 * 添加书
 */
public Set<Book> addBook() {
Set<Book> bookSet = new HashSet<Book>();
for (int i = 0; i < 10; i++) {
Book book = new Book();
book.setBookName("book" + i);
book.setISBN("iSBN" + i);
bookSet.add(book);
}
return bookSet;
}

/**
 * 将Set容器中的对象全部放到一个list容器中
 * 实现从小到大的排序后再将其按顺序输出
 * @param bookSet
 * @return
 */
public ArrayList<Book> toList(Set<Book> bookSet){
ArrayList<Book> bookList = new ArrayList<Book>();
bookList.addAll(bookSet);
Collections.sort(bookList,new Comparator<Book>() {
    public int compare(Book o1, Book o2) {
return o1.getBookName().compareTo(o2.getBookName());
}
});
return bookList;
}

/**
 * 遍历书
 * @param bookSet
 */
public void out(Collection<Book> books){
for(Book book : books){
System.out.println("书名:"+book.getBookName() +"----书ISBN:"+book.getISBN());
}
}

public static void main(String[] args) {
TestBook testBook = new TestBook();
Set<Book> bookSet = testBook.addBook();
testBook.out(bookSet);
System.out.println("--------------------排序后-------------------");
testBook.out(testBook.toList(bookSet));
}
}

/**
 * 书实体
 * @author kevin
 * 
 */
class Book {
private String bookName;
private String ISBN;

public String getBookName() {
return bookName;
}

public void setBookName(String bookName) {
this.bookName = bookName;
}

public String getISBN() {
return ISBN;
}

public void setISBN(String iSBN) {
ISBN = iSBN;
}

}

效果如下:

书名:book1----书ISBN:iSBN1

书名:book2----书ISBN:iSBN2

书名:book5----书ISBN:iSBN5

书名:book0----书ISBN:iSBN0

书名:book7----书ISBN:iSBN7

书名:book4----书ISBN:iSBN4

书名:book9----书ISBN:iSBN9

书名:book6----书ISBN:iSBN6

书名:book3----书ISBN:iSBN3

书名:book8----书ISBN:iSBN8

--------------------排序后-------------------

书名:book0----书ISBN:iSBN0

书名:book1----书ISBN:iSBN1

书名:book2----书ISBN:iSBN2

书名:book3----书ISBN:iSBN3

书名:book4----书ISBN:iSBN4

书名:book5----书ISBN:iSBN5

书名:book6----书ISBN:iSBN6

书名:book7----书ISBN:iSBN7

书名:book8----书ISBN:iSBN8

书名:book9----书ISBN:iSBN9

热心网友 时间:2024-11-17 18:58

public class TestBook implements Comparable<TestBook>{
  private static final int fix = 20131107;
      private String bookName;
      private int isn;
      
      public TestBook(String bookName,int isn) {
       this.bookName = bookName;
       this.isn = isn;
  }
      
      static Set<TestBook> addSet(){
      Set<TestBook> books = new HashSet<TestBook>();
      for (int i = 0; i < 10; i++) {
books.add(new TestBook(i+"年级英语",fix+i ));
  }
      return books;
      }
      static List<TestBook> addList(Set<TestBook> books){
      List<TestBook> bookList = new ArrayList<TestBook>();
      Collections.sort(bookList,null);
      for (Iterator iterator = books.iterator(); iterator.hasNext();) {
  TestBook testBook = (TestBook) iterator.next();
  bookList.add(testBook);
    }
      return bookList;
      }
      
      static void iterPrint(Object obj,String type){
      if(type.equals("list")){
      List<TestBook> bookList = (List<TestBook>)obj;
      // 大到小
//      Collections.sort(bookList,Collections.reverseOrder());
      // 小到大
      Collections.sort(bookList,null);
          for (Iterator iterator = bookList.iterator(); iterator.hasNext();) {
TestBook testBook = (TestBook) iterator.next();
System.out.println("书名:"+testBook.bookName+" ISBN:"+testBook.isn);
}
          }else{
          Set<TestBook> books = (HashSet<TestBook>)obj;
          for (Iterator iterator = books.iterator(); iterator.hasNext();) {
      TestBook testBook = (TestBook) iterator.next();
      System.out.println("书名:"+testBook.bookName+" ISBN:"+testBook.isn);
      }
          }
      }
         public static void main(String[] args) {
         Set<TestBook> books = addSet();
         List<TestBook> bookList = addList(books);
         System.out.println("********************set未排序************************");
         iterPrint(books,"set");
         System.out.println("********************list排序*************************");
         iterPrint(bookList,"list");
}

@Override
public int compareTo(TestBook o) {
    Integer myAge = this.isn;
    Integer oAge  = o.isn;
    return myAge.compareTo(oAge);
}
}

热心网友 时间:2024-11-17 18:58

简单了一个B,就是不给你写。O(∩_∩)O哈哈~,不能给学生养成这种习惯,貌似我上学时候有不会写。追问讨厌 死了!!!

追答

晕晕 代码超出范围

热心网友 时间:2024-11-17 18:59

等着啊 看哥给你写一个追问快点啦 !!! 人家很急 的 。。。

追答其实我是个二流子,不是搞软件的。 哈哈

热心网友 时间:2024-11-17 19:00

现在还要代码么?追问当然要啦 。。。

追答嗯,这是不是联系实际的业务还是就是一个练习而已?isbn说了定义什么类型的么?要不然排序觉得就没有特别的意义了

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...先讲女主的灵魂飘荡了一段时间,然后重生,请问是那本? 拯救者散热器怎么开 电脑如何一键还原系统电脑一键还原怎么操作 神舟笔记本电脑怎么重新设置神舟战神bios恢复出厂设置 神舟电脑恢复出厂设置神舟战神怎么恢复原厂系统 水泥楼梯如何铺木楼梯 家里面楼梯是水泥的不想铺地毯或者地砖还能铺什么 楼梯的水泥台阶上可以铺地板革吗 手机腾讯会议共享屏幕播放视频没声 腾讯会议共享屏幕没声音怎么办 textbook的中文意思 teskbook的意思 请教高人何谓“神通”? 再审申请书交几份 vray渲染器怎么安装到RHINO中 cu拼音怎么读 cu拼音如何读 聈、膼、箻、贂、絒、橻 这些什么字? 龉,橻怎么念,拼音 摔伤想请假一个月怎么写 校园丰富生活的散文精选 人体此穴位被认为似一扇铁门,九箭难穿!此穴一开,百穴通 古代中医学不来 神医大多具备特异功能 (三) 丹道分析(需要老师指点修行切记!切记) 古代名医的特征功能——李时珍 比亚迪汉变速箱cvt是什么材质 电子无级变速和1挡速比一样吗 混动车的“E-CVT”和普通的CVT相比,都有哪些区别呢? 什么叫电子无级变速 张家口市尚义县有什么旅游好去处吗 三猫与花花称体重 《《为你心动》想念花满楼》txt全集下载 知事亲之理是什么意思 黄香温席中黄香方年九岁,知事亲之理是什么意思 黄香温席文言文中”知事亲之理”的意思 儿童知子职,千古一黄香的意思 亚太药业申请强制执行条件 软考信息系统项目管理师考试难度大概是怎样的? 消防箱前端使用的阀门是闸阀还是蝶阀 扎克保罗是什么档次的牌子衣服 骑马的保罗好不好 发汗后多久可以洗澡 满月发完汗多长时间能洗澡 早餐习惯用牛奶煮燕麦片里边还放入黑芝麻,枸杞子,葡萄干另外还加半... 2022年福建省教师远程培训案例对学校开展2.0学习的作用 中擘卫星路灯项目可靠吗 深圳建塔通信工程有限公司在商丘中标5G塔了吗 中擘卫星(福建)实业有限公司怎么样? 唐山市唐通大厦4层有中擘卫星(河南)科技有限公司吗? 高中物理:此题中灯泡L突然发生短路的原因,干路灯泡怎么会短路呢?_百 ... 闲鱼买到盗版书怎么退款运费