Java 书店库存数组书名排序问题

Java 书店库存数组书名排序问题,java,arrays,sorting,inventory,Java,Arrays,Sorting,Inventory,我通常试图研究和学习,但我遇到了困难。 学校作业要求我们建立一个数组来保存书店信息,然后让我们按书名排序 我不确定我是否做对了数组,我真的可以使用一些排序这个数组的技巧 //////////////////////////////////////迄今为止的代码 ///书店类 import java.util.Arrays; @SuppressWarnings("unused") public class BookStore {//BookStore class public static voi

我通常试图研究和学习,但我遇到了困难。 学校作业要求我们建立一个数组来保存书店信息,然后让我们按书名排序

我不确定我是否做对了数组,我真的可以使用一些排序这个数组的技巧

//////////////////////////////////////迄今为止的代码

///书店类

import java.util.Arrays;
@SuppressWarnings("unused")
public class BookStore {//BookStore class
public static void main(String args[]) {
//排列

Book[] Books = new Book[5];

Books[0] = new Book(9780007525492L,"B book","J. R. R. Tolkien",2013,"Harper Collins", 5.00);
Books[1] = new Book(9780007525492L,"D book","J. R. R. Tolkien",2013,"Harper Collins", 5.00);
Books[2] = new EBook(9780007525492L,"C book","J. R. R. Tolkien",2013,"Harper Collins", 5.00,"www.amazon.com");
Books[3] = new Book(9780007525492L,"A book","J. R. R. Tolkien",2013,"Harper Collins", 5.00);
Books[4] = new EBook(9780007525492L,"E book","J. R. R. Tolkien",2013,"Harper Collins", 5.00,"www.amazon.com");
//分类

//输出

    System.out.print("Bookstore Items:\n");

for (int counter=0;counter<Books.length;counter++){
    System.out.println(Books[counter]);

}
//书籍的构造器

Book(long number, String bname, String aname, int year, String pname, double cost)
{ 
isbnNumber = number; 
bookName = bname; 
authName = aname;
pubName = pname;
pubYear = year;
price = cost;

} 
//getisbnNumber:获取isbn

public long getIsbnNumber() 
{ 
    return isbnNumber; 
} 
//setisbnNumber:设置isbn

public void setIsbnNumber(long number) 
{ 

} 
//getbookName:获取书籍名称

public String getBookName() 
{ 
    return bookName; 
} 
public void setBookName(String bname) 
{ 

} 
//设置书名

public String getBookName() 
{ 
    return bookName; 
} 
public void setBookName(String bname) 
{ 

} 
//getauthName:获取作者名称

public String getAuthName() 
{ 
    return authName; 
} 
//setAuthName:设置作者名称

public void setAuthName(String aname) 
{ 

} 
//getpubName:获取发布服务器名称

public String getpubName() 
{ 
    return pubName; 
} 
//setpubName:设置发布服务器名称

public void setPubName(String pname) 
{ 

}     
//getPrice:返回书籍的价格

public double getPrice() 
{ 
    return price; 
} 
public void setPrice(int cost) 
{ 

} 
//设置价格:设置书籍的价格

public double getPrice() 
{ 
    return price; 
} 
public void setPrice(int cost) 
{ 

} 
//getpubYear:每年发布一次

public int getPubYear() 
{ 
    return pubYear; 
}    
public void setPubYear(int year) 
{ 

} 
//setpubYear:设置发布年份

public int getPubYear() 
{ 
    return pubYear; 
}    
public void setPubYear(int year) 
{ 

} 
//用于显示的单个项目的打印输出

public String toString(){ 
    return String.format("\n\n%s\t%s\n%s\t\t%s\n%s\t\t%s\n%s\t\t%d\n%s\t%s\n%s\t\t$%,.2f  ","ISBN:\t", getIsbnNumber(), 
            "Title:", getBookName(), "Author:", getAuthName(),"Year:", getPubYear(), "Publisher:", getAuthName(), "Price:", getPrice()); 


}
} 
//电子书子类

class EBook extends Book{

private String webSite;//web url
private String getWebSite() {
    return webSite;
}


private double getDiscount() {
    return discount;
}

private double discount;


//EBook constructor

EBook(long number, String bname, String aname, int year, String pname,
        double cost, String web) {super(number, bname, aname, year, pname, cost);
        discount = cost*.10;
        webSite = web;      
}

public String toString(){ 
            return

String.format("\n\n%s\t%s\n%s\t\t%s\n%s\t\t%s\n%s\t\t%d\n%s\t%s\n%s\t\t$%,.2f\n%s\t%s\n%s\t$%,.2f    ","ISBN:\t", getIsbnNumber(),"Title:", getBookName(), "Author:", getAuthName(),"Year:",   getPubYear(), "Publisher:", getAuthName(), "Price:", getPrice(),   "Website:",getWebSite(),"Discount:", getDiscount()); 

}

}
/////////////////////////////////////程序输出


书店商品:

国际标准书号:9780007525492

书名:B书

作者:J.R.R.托尔金

年份:2013年

出版商:J.R.R.托尔金

价格:$5

国际标准书号:9780007525492

书名:D书

作者:J.R.R.托尔金

年份:2013年

出版商:J.R.R.托尔金

价格:$5

国际标准书号:9780007525492

标题:C书

作者:J.R.R.托尔金

年份:2013年

出版商:J.R.R.托尔金

价格:$5

网站:www.amazon.com

折扣:0.50美元

国际标准书号:9780007525492

书名:一本书

作者:J.R.R.托尔金

年份:2013年

出版商:J.R.R.托尔金

价格:$5

国际标准书号:9780007525492

标题:电子书

作者:J.R.R.托尔金

年份:2013年

出版商:J.R.R.托尔金

价格:$5

网站:www.amazon.com

折扣:0.50美元


总库存价值:$25.00

您的阵列看起来不错。没什么不对的

排序数组并不是那么难。在谷歌上搜索第二个答案。 如您所见,排序使用数字和字符。 所以在你的例子中,它看起来像这样:

Books.sort(bookName);

我希望这解决了您的问题。

您可以这样进行排序:

Books.sort(bookName);
1) 在
书中实现接口
类:

   public class Book implements Comparable<Book>{

    @Override
    public int compareTo(Book book) {
        return this.bookName.compareTo(book.bookName);
    }
   }

你的排序代码在哪里?你要解决的问题是什么?发布这些详细信息。要进行排序,你应该看看Arrays类的名称。可能重复感谢所有这些答案我真的非常感谢你的努力。但我只是自己想出来的。我很沮丧,走出去喂狗,清醒了头脑,然后再试一次。所以它现在起作用了。谢谢你,太好了。但是你能帮我标出正确的答案吗,或者告诉我们你是怎么做到的?