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

时间:2014-02-02 06:00:57

标签: java

我只想根据其卡片类型“四个Spade,Heart,Club,Diamond之一”排序一系列卡片,即Spades首先出现

我制作了新阵列请解决它

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++;           
        }    
    }   
}

2 个答案:

答案 0 :(得分:1)

您不能通过对象(而不是整数)索引数组 - 您必须使用int

但是你不想访问数组,你想在循环中使用该对象:

arr[0] = x;  

答案 1 :(得分:0)

更改

arr[0] = temp[x];

arr[loc] = x;

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

您还需要将值放在由数组大小限制的新索引中,如果执行arr[0],则始终替换该索引中的值。因此,将值放在具有arr[loc]

的数组中的新索引中