Я в первый раз участвовал в Java, и у меня возникла небольшая проблема при создании программы, которая случайным образом выбирает две карты из стандартной колоды карт 52. Я пытаюсь создать заявление, которое будет сравнивать, если две карты имеют один и тот же рейтинг или тот же иск. Когда я попытался создать оператор if для этого, у меня появилась ошибка, говорящая, что я не могу сравнивать два одинаковых выражения. Мне было интересно, может ли кто-нибудь дать мне представление о том, что делать. Это мой код:Как сравнить случайно созданные карты в программе Java-карты?
package Assignment3;
public class HouseOfCards {
public static void main(String[] args) {
int[] deck = new int[52];
String[] suits = {"Spades", "Hearts", "Diamonds", "Clubs"};
String[] ranks = {"Ace", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Jack", "Queen", "King"};
for(int i = 0; i < deck.length; i++) deck[i] = i;
for(int i = 0; i < deck.length; i++) {
int index = (int)(Math.random() * deck.length);
int temp = deck[i];
deck[i] = deck[index];
deck[index] = temp;
}
for(int i = 0; i < 2; i++) {
String suit = suits[deck[i]/13];
String rank = ranks[deck[i] % 13];
System.out.println(rank + " of " + suit);
}
}
}
Моя попытка была:
if (suit==suit)
System.out.println("Cards share the same suit");
else
System.out.println("Cards do not share the same suit");
if (rank==rank)
System.out.println("Cards share the same rank");
else
System.out.println("Card do not share the same rank");
Можете ли вы включить вашу попытку? – Szymon
if (костюм == костюм) \t \t \t System.out.println («Карты имеют один и тот же костюм»); \t \t else \t \t \t System.out.println («Карты не имеют одного и того же костюма»); \t \t if (rank == rank) \t \t \t System.out.println («Карты имеют одинаковый ранг»); \t \t else \t \t \t System.out.println («Карточка не имеет одинакового ранга»); – arry617