我需要帮助创建一个ArrayList并向它们添加一些整数。从本质上讲,我有一张纸牌游戏,可以拉出卡片,然后保存ID(BCID)。我想将此拉ID添加到ArrayList,所以我可以避免两次拉同一张卡。我有它设置如下,但我不断得到重复。我知道这些卡拉动正确,因为它显示一切正常 - 只是重复卡,不幸的是。在Android中使用整数ArrayList
任何帮助你可以提供将是伟大的!我已尽力包括相关部分。如果您需要更多信息,请告诉我。
public static Integer bcid1, bcid2, bcid3, bcid4, bcid5, bcdcid;
public static List<Integer> usedCards = new ArrayList<Integer>();
在下面的例子中,假定检测到重复然后初始化序列绘制不同的卡。
public static void setIDs()
{
try
{
bcid1 = Integer.parseInt(bc1);
usedCards.add(bcid1);
}
catch(NumberFormatException nfe)
{ }
try
{
bcid2 = Integer.parseInt(bc2);
if (usedCards.contains(bcid2))
{
try
{
blueCard2(ctx);
} catch (IOException e) {
e.printStackTrace();
}
}
else
{
usedCards.add(bcid2);
}
}
catch(NumberFormatException nfe)
{ }
try
{
bcid3 = Integer.parseInt(bc3);
if (usedCards.contains(bcid3))
{
try
{
blueCard3(ctx);
} catch (IOException e) {
e.printStackTrace();
}
}
else
{
usedCards.add(bcid3);
}
}
catch(NumberFormatException nfe)
{ }
try
{
bcid4 = Integer.parseInt(bc4);
if (usedCards.contains(bcid4))
{
try
{
blueCard4(ctx);
} catch (IOException e) {
e.printStackTrace();
}
}
else
{
usedCards.add(bcid4);
}
}
catch(NumberFormatException nfe)
{ }
try
{
bcid5 = Integer.parseInt(bc5);
if (usedCards.contains(bcid5))
{
try
{
blueCard5(ctx);
} catch (IOException e) {
e.printStackTrace();
}
}
else
{
usedCards.add(bcid5);
}
}
catch(NumberFormatException nfe)
{ }
}
我不遵循你的逻辑。哪里有'bc1','bc2'等等? –