Kapitel 13. Objekte von Arrays
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Im vorigen Kapitel haben wir eine Klasse zur Darstellung von Karten definiert und ein Array von Card
Objekten verwendet, um ein Deck darzustellen. In diesem Kapitel gehen wir weitere Schritte in Richtung objektorientierte Programmierung.
Zuerst definieren wir eine Klasse, die ein Kartenspiel darstellt. Dann stellen wir Algorithmen zum Mischen und Sortieren von Kartendecks vor. Schließlich stellen wir ArrayList
aus der Java-Bibliothek vor und verwenden sie, um Kartensammlungen darzustellen.
Decks mit Karten
Hier ist der Anfang einer Deck
Klasse, die ein Array von Card
Objekten kapselt:
public
class
Deck
{
private
Card
[]
cards
;
public
Deck
(
int
n
)
{
this
.
cards
=
new
Card
[
n
];
}
public
Card
[]
getCards
()
{
return
this
.
cards
;
}
}
Der Konstruktor initialisiert die Instanzvariable mit einem Array von n
Karten, aber er erstellt keine Card
Objekte. Abbildung 13-1 zeigt, wie ein Deck
ohne Karten aussieht.
Wir fügen einen weiteren Konstruktor hinzu, der ein standardmäßiges 52-Karten-Array erstellt und es mit Card
Objekten auffüllt:
public
Deck
()
{
this
.
cards
=
new
Card
[
52
];
int
index
=
0
;
for
(
int
suit
=
0
;
suit
<=
3
;
suit
++)
{
for
(
int
rank
=
1
;
rank
<=
13
;
rank
++)
{
this ...
Get Think Java, 2. Auflage now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.