我正在尝试创建JLabel,以便在拼字游戏中显示商店中的购物车。当购物车为空时,它应显示为“#34;购物车是空的。”#34;并且当它不是它应该列出列表中的内容。以下是我用来执行此操作的代码。
public void reset(){
removeAll();
}
public void update(){
reset();
JLabel cartHeader = new JLabel("<html><br><b>Current Player's Tile Cart</b></html>", JLabel.CENTER);
add(cartHeader);
ArrayList<SpecialTile> tileCart = gameStore.getTileCart();
if(tileCart.size() == 0){
JLabel emptyCart = new JLabel("<html><br><br>Cart is currently empty.</html>", JLabel.CENTER);
add(emptyCart);
}else{
System.out.println("tileCart size: "+tileCart.size());
for(SpecialTile currentTile : tileCart){
JLabel tileLabel = new JLabel("", JLabel.CENTER);
if(currentTile.getClass().equals(BoomTile.class)){
tileLabel.setText("BoomTile - "+exampleBoom.tilePrice());
}else if(currentTile.getClass().equals(ReverseOrder.class)){
tileLabel.setText("ReverseOrderTile - "+exampleReverse.tilePrice());
}else if(currentTile.getClass().equals(NegativePoints.class)){
tileLabel.setText("NegativePointsTile - "+exampleNegative.tilePrice());
}else if(currentTile.getClass().equals(PersonalTile.class)){
tileLabel.setText("ShareTile - "+exampleShare.tilePrice());
}else if(currentTile.getClass().equals(UnknownTile.class)){
tileLabel.setText("UnknownTile - "+exampleUnknown.tilePrice());
}
add(tileLabel);
}
}
JButton purchaseButton = new JButton("Purchase");
add(purchaseButton);
}
我遇到的问题是,不是用购物车中的不同瓷砖替换文字,而是总是看到购物车是空的。
这基本上是发生的事情:http://i.imgur.com/Rn2gMUM.png