Java 方法将数组的特定对象复制到位于特定位置的另一个数组的同一类型数组

Java 方法将数组的特定对象复制到位于特定位置的另一个数组的同一类型数组,java,Java,我只想按卡片类型对一系列卡片进行排序“四张黑桃、红桃、梅花、钻石中的一张”,即黑桃排在第一位 我做了一个新的数组,请解决它 private static void colorSort(Card temp[]){ Card arr[]; arr = new Card[13]; int loc=0; for(Card x: temp){ i

我只想按卡片类型对一系列卡片进行排序“四张黑桃、红桃、梅花、钻石中的一张”,即黑桃排在第一位

我做了一个新的数组,请解决它

private static void colorSort(Card temp[]){      
    Card arr[];             
    arr = new Card[13];            
    int loc=0;              
    for(Card x: temp){            
        if(x.cardType=="Spade"){           
            arr[0] = temp[x];    //this line giving error that "can't convert Card to                          int"`            
            loc++;           
        }    
    }   
}
改变

arr[0] = temp[x];

for循环将卡放入
x
中,您无需再次访问阵列


您还需要将这些值放入一个新索引中,该索引受数组大小(13)的限制。如果执行
arr[0]
操作,则始终替换该索引中的值。因此,使用
arr[loc]

将值放入数组中的新索引中。不能按对象(大于整数)对数组进行索引-必须使用
int

但您不想访问数组,而是想使用循环中的对象:

arr[0] = x;  
arr[0] = x;