私は何が間違っているのか分かりません。私はカードと手のクラスでJavaプログラムを書いています。私は私のメインプログラムを実行すると、それだけでヌル私はプログラムを実行すると、カードとハンドゲームはnullを返し続けます。
import java.util.ArrayList;
public class Hand {
//Field
public String [] array;
private ArrayList<String> cards = new ArrayList<String>();
//Constructor
public Hand(String [] array) {
this.array = array;
}
//Methods
public void addCard(String card){
cards.add(card);
}
public void removeCard(String card){
cards.remove(card);
}
public static void printHand(){
System.out.print(Card.printCard());
}
public class Card {
//fields
public static String num2rank, rank2abbrv, num2suit, suit2abbrv;
//constructor
public Card (String num2rank,String rank2abbrv,String num2suit,
String suit2abbrv){
this.num2suit = num2suit;
this.num2rank = num2rank;
this.rank2abbrv = rank2abbrv;
this.suit2abbrv = suit2abbrv;
}
//Methods
public static String getRank(){
return num2rank;
}
public static String getSuit(){
return num2suit;
}
public static String getName(){
String result = "";
String rank = getRank();
String suit = getSuit();
result += rank + " of " + suit;
return result;
}
public static String getAbbrev(){
String result = "";
String rank = rank2abbrv;
String suit = suit2abbrv;
result += rank + suit;
return result;
}
public static String printCard(){
String results = "";
results += "Printing Hand: " + getAbbrev();
results += "\n" + getName();
return results;
}
}
public class main {
public static void main(String[] args) {
Hand h = new Hand((new String []{"3c", "4s","5d","6h","7h"}));
h.printHand();
}
}
をプリントアウトし、これらは両方とも私の手とカードクラスです。ランクとスーツのクラスは、カードとそのスーツとランクが何であるかの文例です。私がメインを走らせるとき、それはヌルを印刷する時です。たとえば「7」と「7つの心」のように印刷したい場合
あなたのカードのクラスのソースコードを含めてください。 – SporreKing
よく構築された[mcve]を投稿する必要があります。この質問を改善する方法と今後の質問を表示するには、[ヘルプ]セクションで質問してください。 –
「nullを返す」とは何ですか?再度、この質問を改善してください。 –