2016-09-25 23 views
0

私は文字通りプログラミングの新機能です。整数を文字列に変換する方法があるかどうかを知りたいですか?私はいくつかのGoogleの研究を行ったが、それは私の質問にはあまり答えなかった。私がやろうとしています何int + stringで問題を解決する

はこれです:私はint cardValue = (int)(Math.random() * 13 + 1);

を持って それはその後、それがコンソールにcardValue + CARDTYPEを出力コード内で(必要があります少なくとも)1と13との間のランダムな値をとります例えば、「2 of Aces」のようなものである。私が欲しいのは、カードの価値が1、11、12、または13の場合、「Diamonds of Diamonds」ではなく「Diamond of Queens」を印刷するということです。

if (cardType == 1){ 
System.out.println("You got: " + cardValue + aces); 
}else if (cardType == 2) { 
System.out.println("You got: " + cardValue + spades); 
}else if (cardType == 3) { 
System.out.println("You got: " + cardValue + cross); 
}else { 
System.out.println("You got: " + cardValue + diamonds); 
} 
} 

どのように私はこの問題を解決します:

カードの種類は何か提案がaswell注目されるように、次のように印刷されたと私は、このためのより良い方法がなければならない知っていますか?

答えて

0

意志出力「女王」(1と仮定すると、あなたのカードの値である)

または

は、列挙型を使用

String[] txt = {"a","Queen"}; 
System.out.println(txt[1]); 
のようなカードバリューインデックスにテキスト値をolding String配列を使用あなたのcardType(および/またはカードの値)を入力して、印刷する名前を保持するテキストフィールドを与えます。

は 'Ace'を出力します

1

cardValue変数の値を出力する前に、いくつかの単純なifステートメントを使用して、人間が読める結果に変換することができます。エース、ジャック、クイーン、キングの4つの特別なケースがあります。個別のif/else-ifステートメントを使用して、これらのそれぞれを処理できます。あなたが出力するテキスト、cardNamecardValueから変換するための新しい方法を定義します。

private static String getCardName(int cardValue) { 
    // By default, you just output the number as is 
    String cardName = "" + cardValue; 

    if (cardValue == 1) { 
     cardName = "Ace"; 
    } 
    else if (cardValue == 11) { 
     cardName = "Jack"; 
    } 
    else if (cardValue == 12) { 
     cardName = "Queen"; 
    } 
    else if (cardValue == 13) { 
     cardName = "King"; 
    } 

    return cardName; 
} 

その後、単に所望の出力フォーマットに変換するために、この新しいメソッドgetCardName(cardValue)を使用して、あなたのprintlnで結果を使用しますステートメント。

+0

複数の代わりにスイッチを使用する場合 – Tokazio

+0

@Tokazio提案していただきありがとうございます!これは間違いなく有効な代替ソリューションですが、OPがプログラミングの初心者として必ずしも親しんでいるとは限らず、基礎を学ぶ人にとってソリューションに含めることが不可欠と思われる新しいステートメント/構文が導入されています。それはちょうど私の意見です。 – nbrooks

+0

興味があれば、ここで['switch'ステートメント(https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html))の詳細を見つけて、その方法についてもっと学ぶことができますこのような複数の 'if' /' else if'文を置き換えてください。 – nbrooks