首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >(处理)删除数组中以前使用过的对象

(处理)删除数组中以前使用过的对象
EN

Stack Overflow用户
提问于 2014-11-24 03:10:46
回答 2查看 374关注 0票数 0

抱歉,标题的措辞太糟糕了。我正在为我的编程类创建一个处理过程中的“战争”游戏。我需要更改我的代码,以便将使用的每一张卡从甲板/数组中删除。我偶然发现一些帖子和谷歌的结果提到了"ArrayList",但我仍然有点不知所措。

下面的代码显示两个独立的随机卡片,并在单击鼠标时显示两个新的随机卡。

(第一次‘战争’)

代码语言:javascript
复制
void draw(){
image(card[imageIndex],40,150);
image(card2[imageIndex2],340,150);
}

void mousePressed(){
imageIndex = int(random(card.length));
imageIndex2 = int(random(card2.length));
}

(第二张卡片)

代码语言:javascript
复制
PImage[] card = new PImage[13];
PImage[] card2 = new PImage[13];
int imageIndex = int(random(0,12)),
imageIndex2 = int(random(0,12));

void setup(){
size(500,500);
card[0] = loadImage("2_of_clubs.jpg");
card[1] = loadImage("3_of_clubs.jpg");
card[2] = loadImage("4_of_clubs.jpg");
card[3] = loadImage("5_of_clubs.jpg");
card[4] = loadImage("6_of_clubs.jpg");
card[5] = loadImage("7_of_clubs.jpg");
card[6] = loadImage("8_of_clubs.jpg");
card[7] = loadImage("9_of_clubs.jpg");
card[8] = loadImage("10_of_clubs.jpg");
card[9] = loadImage("jack_of_clubs.jpg");
card[10] = loadImage("queen_of_clubs.jpg");
card[11] = loadImage("king_of_clubs.jpg");
card[12] = loadImage("ace_of_clubs.jpg");

card2[0] = loadImage("2_of_clubs.jpg");
card2[1] = loadImage("3_of_clubs.jpg");
card2[2] = loadImage("4_of_clubs.jpg");
card2[3] = loadImage("5_of_clubs.jpg");
card2[4] = loadImage("6_of_clubs.jpg");
card2[5] = loadImage("7_of_clubs.jpg");
card2[6] = loadImage("8_of_clubs.jpg");
card2[7] = loadImage("9_of_clubs.jpg");
card2[8] = loadImage("10_of_clubs.jpg");
card2[9] = loadImage("jack_of_clubs.jpg");
card2[10] = loadImage("queen_of_clubs.jpg");
card2[11] = loadImage("king_of_clubs.jpg");
card2[12] = loadImage("ace_of_clubs.jpg");
}
EN

Stack Overflow用户

发布于 2014-12-07 22:18:17

如果必须使用数组,则必须执行类似于以下代码的操作:

代码语言:javascript
复制
PImage[] removeCardFromDeck(PImage deck, int index){
  PImage[] newdeck = new PImage[deck.length -1];
  int count=0;
  for(int i =0 ; i<newdeck.length;i++){
    if(count==index) count++;
    newdeck[i] = deck[count];
    count++;    
  }
  return newdeck;
}

但是对于这个任务,最好使用ArrayLists。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27097280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档