Jak wydrukować tytuł albumu z listy array, jeśli zawartość obiektu znajduje się w prywatnym polu w innej klasie?

Metoda wyświetlania

public void displayAllAlbums() {

   for (int i = 0; i < AlbumList.size(); i++) {

        System.out.println(AlbumList.get(i));
    }
}

Klasa albumu, która ma tytuł i cenę zmiennych prywatnych.

class Album {

    private String title;
    private double price;

    Album(String title, double price) {

        this.title = title;
        this.price = price;
    }

    public String getTitle() {
        return this.title;
    }

    public double getPrice() {
        return this.price;
    }
}

Klasa koszyka Dodaje utwory do arraylisty, może również uzyskać sumę

import java.util.*;

public class Cart {

List<Album> AlbumList = new ArrayList<Album>();

Metoda główna Umieszczanie albumów w metodzie AddalBum

public static void main(String[] args) {
    Cart cart1 = new Cart();

    Album album1 = new Album("ye", 20);
    Album album2 = new Album("MBDTF", 16);

    cart1.addAlbum(album1);
    cart1.addAlbum(album2);

    System.out.println(cart1.getTotalAlbums());
    cart1.displayAllAlbums();

}

Dodawanie albumu do arraylist

public void addAlbum(Album album) {
    AlbumList.add(album);
}

Niepewny, jak wyświetlić album

public void displayAllAlbums() {
    for (int i = 0; i < AlbumList.size(); i++) {

        System.out.println(AlbumList.get(i));
    }
}
2
Connor Jones 4 czerwiec 2018, 07:15

3 odpowiedzi

Najlepsza odpowiedź

Zrób to.

public void displayAllAlbums() {
    for (int i = 0; i < AlbumList.size(); i++) {
        Album album = AlbumList.get(i)
        System.out.println(album.getTitle() + " "+ album.getPrice());
    }
}

Obiekty twojej tablicy są właściwie obiektem albumu. Więc kiedy uzyskuje dostęp do obiektu arraylist za pośrednictwem polecenia albumlist.get (i), otrzymujesz instancję obiektów albumu. Więc przekazujesz go do zmiennej albumu. Następnie uzyskaj dostęp do pola prywatnego za pomocą metod Getter utworzony wcześniej!

Twoje zdrowie!

0
O_o 4 czerwiec 2018, 04:20

Możesz to zrobić za pomocą nadrzędnego metody Tostring () w klasie albumu lub zapewniając metodę publiczną do wyświetlania właściwości.

 class Album {

    private String title;
    private double price;

    Album(String title, double price) {

        this.title = title;
        this.price = price;

    }

    public String getTitle() {
        return this.title;
    }

    public double getPrice() {
        return this.price;
    }

@Override
    public String toString(){
      return "title:"+title+",price:"+price;
    }
    }

Podczas przekazywania obiektu na System.Out.println (albumlist.get (i)) metoda Tostrush () otrzyma tytuł albumu i drukowania i ceny.

0
Gaurav Srivastav 4 czerwiec 2018, 04:23

Jak wydrukować tytuł albumu z listy array

Wystarczy użyć metody publicznej akcesoriów I.E. {x0}}

public void displayAllAlbums() {
   for (Album album : AlbumList) {
        System.out.printf("Album title: %s%n",album.getTitle());
    }
}
0
user2575725user2575725 4 czerwiec 2018, 04:28