不能';t使用java排序算法对秩或字符串进行排序

不能';t使用java排序算法对秩或字符串进行排序,java,Java,代码如下: import java.util.Random; public class Card{ private String rank; private String suit; private Card[] deck; private int currentCard; private static final int NCARDS = 52; private static final Random randomNumbers = new Random(); private static

代码如下:

import java.util.Random;

public class Card{

private String rank;
private String suit;
private Card[] deck;
private int currentCard;
private static final int NCARDS = 52;
private static final Random randomNumbers = new Random();
private static String[] ranks ={ "2", "3", "4", "5", "6","7", "8", 
        "9", "10", "J", "Q", "K","A"};
private static String[] suits = { "Spades", "Heart", "Clubs", "Diamond" };

public Card(String rank,String suit)
{
    this.rank = rank;
    this.suit = suit;
}

public Card()
{

    deck = new Card[ NCARDS ];
    for ( int count = 0; count < deck.length; count++ )
        deck[ count ] = new Card( ranks[ count % 13 ], suits[ count / 13 ]         
}

public void shuffle()
{
    for ( int first = 0; first < deck.length; first++ ){
        int second = randomNumbers.nextInt( NCARDS );
        Card temp = deck[ first ];
        deck[ first ] = deck[ second ];
        deck[ second ] = temp;
    }
}

public String getSuit()
{

    return this.suit;
}

public String getRank()
{
    return this.rank;
}

public Card dealCard()
{
    if(currentCard < deck.length)
        return deck[currentCard++];
    else
        return null;
}

public String toString(){
    return getRank() + " of " + getSuit();
}
import java.util.Random;
公务舱卡{
私有字符串秩;
私服;
私人卡[]套;
个人信用卡;
专用静态最终int NCARDS=52;
私有静态最终随机数=新随机数();
私有静态字符串[]排名={“2”、“3”、“4”、“5”、“6”、“7”、“8”,
“9”、“10”、“J”、“Q”、“K”、“A”};
私有静态字符串[]套装={“黑桃”、“心”、“梅花”、“钻石”};
公共卡(串级、串套装)
{
这个.等级=等级;
这套衣服;
}
公共卡()
{
卡片组=新卡片[NCARDS];
对于(int count=0;count
//我的排序算法无法工作,仍然保持相同的输出

public void sortbyRank()
{
    //how to compare suit since club is higher than diamond

    for(int i=0; i<deck.length-1; ++i)
    {
        int min = i;
        for(int j =i +1; j<deck.length ; ++j){
            if(deck[j].getRank().compareTo(deck[i].getRank()) < 0)
            {
                min = j;
            }
        }
        Card temp = deck[min];
        deck[min] = deck[i];
        deck[i] = temp;
    }

}
public void sortbyRank()
{
//既然俱乐部比钻石高,如何比较西装

对于(inti=0;i将此信息输入if条件卡temp=deck[min];deck[min]=deck[i];deck[i]=temp;。提示:查看心理“模型”您正在构建。卡牌类应该是一张卡牌。您最好也添加一个游戏类-这将是了解/处理/排序您的卡牌的正确抽象。或者您认为您手持的每张卡牌在现实世界中也包含整个卡牌组吗?!