如何在 super 关键字中使用具有多个条件的三元运算符?

我正在尝试使用超级构造函数和三元运算符将以下代码转换为一行代码。尝试了多种方法,但没有任何效果。


if (c == 0) {

    super(Piece.JMAN, x, y, Color.red);

} else if (c == 1) {

    super(Piece.JMAN, x, y, Color.green);

} else {

    super(Piece.JMAN, x, y, Color.yellow);

}



蝴蝶刀刀
浏览 81回答 1
1回答

慕侠2389804

正如@jacobg 在评论中所写,您可以这样做super(Piece.JMAN, x, y, c == 0 ? Color.red : c == 1 ? Color.green : Color.yellow)出于可读性的目的,您可能希望将其拆分为两个带有括号的语句。Color color = (c == 0 ? Color.red : (c == 1 ? Color.green : Color.yellow)); super(Piece.JMAN, x, y, color);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java