ユーザーがスーパーマーケットのカタログを作成し、ユーザーが入力したコードに従って昇順でカタログに入力したすべての製品を表示できる Java アプリケーションを作成しようとしています。 「ソート」と呼ばれるメソッドを使用できることがわかりましたが、問題を実装しようとしましたが、うまくいかず、コードのどこに配置すればよいかわかりません。
私が書いたコード: 2 クラス クラス 1:
public class Catalog {
private String description ; 
private String code ;
private double price ;
private String phrase ;
int counter = 0;
private Catalog [] list = new Catalog [100];
public Catalog (String productDescription , String productCode , double    productPrice  , String productPhrase)
{
    description = productDescription;
    code = productCode;
    price = productPrice;
    phrase = productPhrase;
}
public void setDescription (String productDescription)
{
    description = productDescription;
}
public String getDescription ()
{
    return description;
}
public void setCode (String productCode)
{
    code = productCode;
}
public String getCode ()
{
    return code;
}
public void setPrice (double productPrice)
{
    price = productPrice;
 }
public double getPrice ()
{
    return price;
 }
public void setPhrase (String productPhrase)
{
    phrase = productPhrase;
}
public String getPhrase ()
{
    return phrase;
}
クラス 2:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class CatalogTest {
    public static void main(String[] args) throws IOException {
        String name = null;
        String code = null;
        double price = 0.0;
        String phrase = null;
        BufferedReader input = new BufferedReader (new InputStreamReader  (System.in));
        Catalog product = new Catalog(name,code,price,phrase);
        Catalog [] productsArray = new Catalog [100];
        for (int i = 0 ; i < productsArray.length ; i ++)
        {
            System.out.println("Enter product description (or # to stop): ");
            name = input.readLine();
            if (!("#".equals(name)))
            {
                productsArray [i] = product;
                product.setDescription(name);
                System.out.println("Enter product code: ");
                code = input.readLine();
                productsArray [i] = product;
                product.setCode(code);
                System.out.println("Enter product unit price: ");
                price = Double.parseDouble(input.readLine());
                productsArray [i] = product;
                product.setPrice(price);
                System.out.println("Enter product unit phrase: ");
                phrase = input.readLine();
                productsArray [i] = product;
                product.setPhrase(phrase);
                productsArray [i] = new Catalog (name,code,price,phrase);
            }
            else
            {
                System.out.println("Your Catalog:");
                for (int j = 0; j < productsArray.length; j++)
                {
                    if(productsArray[j]!=null)
                    {
                        System.out.printf("%s, %s,$%.2f %s,",
                        productsArray[j].getCode(),
                        productsArray[j].getDescription(),
                        productsArray[j].getPrice(),
                        productsArray[j].getPhrase());
                        System.out.println();
                    }
                }
                break;
            }
        }
    }
}
助けてください??