COMP2396
Loading...
Searching...
No Matches
Card.java
Go to the documentation of this file.
1package tutorial4.part3;
2
3// Convert the following array program into ArrayList version:
4/*
5public class Card {
6 public static void main(String[] args) {
7 int[] deck = new int[52];
8 String[] suits = {"Spade", "Heart", "Diamond", "Club"};
9
10 // Initialize cards
11 for (int i = 0; i < deck.length; i++) {
12 deck[i] = i;
13 }
14
15 // Shuffle the cards.
16 for (int i = 0; i < deck.length; i++) {
17 int index = (int) (Math.random() * deck.length);
18 int temp = deck[i];
19 deck[i] = deck[index];
20 deck[index] = temp;
21 }
22
23 // Display the card(s) that is heart from the first five cards.
24 for (int i = 0; i < 5; i++) {
25 String suit = suits[deck[i] / 13];
26 if (suit.equals("Heart")) {
27 System.out.println("Card number " + deck[i] + " is " + suit);
28 }
29 }
30 }
31}
32*/
33
34import java.util.*;
35
36/**
37 * Key concepts from this tutorial exercise:
38 * 1. import java.util.*; to use ArrayList.
39 * 2. ArrayList<Integer> deck = new ArrayList<>(); to create an ArrayList of Integer.
40 * 3. an_array[index] => an_arrayList.get(index)
41 * 4. an_array[index] = value => an_arrayList.set(index, value)
42 * 5. an_array.length => an_arrayList.size()
43 * 6. How to program swap() for ArrayList:
44 for (int i = 0; i < an_arrayList.size(); i++) {
45 int index = (int) (Math.random() * an_arrayList.size());
46 int temp = an_arrayList.get(i);
47 an_arrayList.set(i, an_arrayList.get(index));
48 an_arrayList.set(index, temp);
49 }
50 */
51public class Card {
52 public static void main(String[] args) {
53 ArrayList<Integer> deck = new ArrayList<>();
54 ArrayList<String> suits = new ArrayList<>();
55 suits.add("Spade");
56 suits.add("Heart");
57 suits.add("Diamond");
58 suits.add("Club");
59
60 // Initialize cards
61 for (int i = 0; i < 52; i++) {
62 deck.add(i);
63 }
64
65 // Shuffle the cards.
66 for (int i = 0; i < deck.size(); i++) {
67 int index = (int) (Math.random() * deck.size());
68 int temp = deck.get(i);
69 deck.set(i, deck.get(index));
70 deck.set(index, temp);
71 }
72
73 // Display the card(s) that is heart from the first five cards.
74 for (int i = 0; i < 5; i++) {
75 String suit = suits.get(deck.get(i) / 13);
76 if (suit.equals("Heart")) {
77 System.out.println("Card number " + deck.get(i) + " is " + suit);
78 }
79 }
80 }
81}
Key concepts from this tutorial exercise:
Definition Card.java:51
static void main(String[] args)
Definition Card.java:52