Why doesn't this method work? Java ternary operator

前端 未结 6 576
情歌与酒
情歌与酒 2020-12-03 03:53

What\'s wrong with this code:

void bark(boolean hamlet) {
    hamlet ? System.out.println(\"To Bark.\") : System.out.println(\"Not to Bark\");
}
6条回答
  •  时光说笑
    2020-12-03 04:13

    Ternary operators must return something. So you can put it inside the print statement like such:

    void bark(boolean hamlet) 
    {
        System.out.printf("%s\n", hamlet ? "To Bark." : "Not to Bark");
    }
    

    Or:

    void bark(boolean hamlet) 
    {
        System.out.println(hamlet ? "To Bark." : "Not to Bark");
    }
    

提交回复
热议问题