在ArrayList类中使用“get”方法时出现问题。ArrayList获取方法的问题
主要方法应该是在ArrayList中创建一副牌,然后显示所有牌。我只是寻找一个解释,为什么我在我的主要方法(游戏类)中遇到“d.get(i)”的错误。如果我在甲板类中使用它,它会正常工作。
游戏类:
package game;
import java.util.*;
public class Game {
public static void main(String[] args) {
/*Card f = new Card(2,7);
System.out.println(f.toString());*/
Deck d = new Deck();
int i = 0;
while(i < 52)
{
//where error occurs:
Card k = d.get(i);//get is underlined red
System.out.println(d.toString());
i++;
}
}
}
卡类:
package game;
public class Card {
private int suit, value;
private String[] cardSuit = {"Spades", "Diamonds", "Hearts", "Clubs"};
private String[] cardValue = {"Ace", "King", "Queen", "Jack", "10",
"9", "8", "7", "6", "5", "4", "3", "2"};
public Card(int cSuit, int cValue)
{
suit = cSuit;
value = cValue;
}
public String toString()
{
String cardInfo = cardValue[value] + " of " + cardSuit[suit];
return cardInfo;
}
public int getValue()
{
return value;
}
public int getSuit()
{
return suit;
}
}
甲板类:
package game;
import java.util.*;
public class Deck {
private ArrayList<Card> deck;
public Deck(){
deck = new ArrayList<>();
for(int i = 0;i<4;i++){
for(int j = 0;j<13;j++){
deck.add(new Card(i,j));
}
}
}
}
为什么你认为你的'Deck'类有'get'方法? – Savior
我不这么认为。我想我可以在主要方法 – denholm
中使用arraylist类中的get方法然后执行此操作。不要做'd.get(i)'。 'd'是'Deck',而不是'ArrayList'。 – Savior