繁体   English   中英

如何从/ if循环中获取正确的输出

[英]How to get the correct output from this for / if loop

我目前很难将for循环与if循环结合使用。 我现在没有得到正确的输出,也许您可​​以帮助我找到线索。

for循环遍历我的所有卡,每张卡都有一个卡号,从0开始,每次递增+1

每张卡都有持有卡的人的名字。

问题:如果输入所选号码,我不仅需要打印所选卡,还需要打印名称所拥有的所有其他卡。

我如何接收输入:

System.out.println("Enter your card number: ");
int cardnumber = Integer.parseInt(in.nextLine());

当前循环:

for(Card c: cardlist) {                              

    if(c.toString().contains(cardlist.getCard(cardnumber).toString())){
    System.out.println(c.toString());
    }
}

现在输出

// Input: 0

Cardnumber: 0
Name: Lars

我想要实现的输出

// Input: 0, only print cards with name Lars

Cardnumber: 0
Name: Lars

Cardnumber: 1
Name: Lars

Cardnumber: 5 
Name: Lars

好。 因此,用户输入卡号X,程序应列出拥有卡X的人所拥有的所有卡。因此,这就是您应该实现的。 用伪代码:

Card cardX = findCardWithNumber(x);
String owner = cardX.getOwner();
for (Card card: allCards) {
    if (card.getOwner().equals(owner)) {
        System.out.println(card);
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM