Discuss / Java / 三元运算符效率是否比if高?

三元运算符效率是否比if高?

Topic source

public class Bmi{

    public static void main(String[] args) {

        double height = 1.81;

        int weight = 70;

        double bmi = weight / (height*height);

        String record = bmi >= 35 ? "严重肥胖": 

                        bmi >= 30 ? "中度肥胖": 

                        bmi >= 27 ? "轻度肥胖":

                        bmi >= 24 ? "体重过重":

                        bmi >= 18.5 ? "正常范围":"体重过轻";

        System.out.println(record);

        if (bmi >= 35) {

            System.out.println("严重肥胖");

        } else if (bmi >= 30) {

            System.out.println("中度肥胖");

        } else if (bmi >= 27) {

            System.out.println("轻度肥胖");

        } else if (bmi >= 24) {

            System.out.println("体重过重");

        } else if (bmi >=18.5) {

            System.out.println("正常范围");

        } else {

            System.out.println("体重过轻");

        }

    }

}


  • 1

Reply