JAVA基础语法编程详解---三目运算符

news2024/12/28 18:35:58

6.判断体重指数

题目描述

- 描述
体重指数 = 体重 (kg) / ( 身高 (m) × 身高 (m) ),小于18.5属于偏瘦,介于18.5和20.9之间(左闭右开)属于苗条,介于20.9和24.9之间(左闭右闭)属于适中,超过24.9属于偏胖。
下面由你来编写一段逻辑,算出输入了身高和体重的用户的体重指数,并返回他们的身材状态。(体重指数请使用double类型)

  • 输入描述: 用户的身高(m)和用户的体重(kg)
  • 输出描述: 体重指数代表的用户身材状态
  • 示例
    输入: 1.75 62.5
    输出: 苗条

解题思路

同5.计算商场折扣思路一样,使用if...else()语句或使用switch...case()
思路一: 使用if...else()语句

//write your code here......
        double bmi = weight / (height * height);

        if (bmi > 24.9) {
            System.out.print("偏胖");
            return;
        } else if (bmi >= 20.9) {
            System.out.print("适中");
            return;
        } else if (bmi >= 18.5) {
            System.out.print("苗条");
            return;
        } else {
            System.out.print("偏瘦");
        }

思路二: 使用三目运算符

//write your code here......
        double bmi = weight / (height * height);
        System.out.println(bmi < 18.5 ? "偏瘦" : (bmi < 20.9 ? "苗条" : (bmi < 24.9 ? "适中" :"偏胖")));

代码实现

思路一: 使用if...else()语句

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double height = scanner.nextDouble();
        double weight = scanner.nextDouble();

        //write your code here......
        double bmi = weight / (height * height);
        if (bmi > 24.9) {
            System.out.println("偏胖");
            return;
        } else if (bmi >= 20.9) {
            System.out.println("适中");
            return;
        } else if (bmi >= 18.5) {
            System.out.println("苗条");
            return;
        } else {
            System.out.println("偏瘦");
        }

    }
}

思路二: 使用三目运算符

import java.util.Scanner;

public class Main   {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double height = scanner.nextDouble();
        double weight = scanner.nextDouble();

        //write your code here......
        double bmi = weight / (height * height);
        System.out.println(bmi < 18.5 ? "偏瘦" : (bmi < 20.9 ? "苗条" : (bmi < 24.9 ? "适中" :"偏胖")));

    }
}

运行结果

测试

总结—三目运算符

三目运算基本格式:

 A ? TRUEA : FALSEB 
  • 其中A为任意表达式,要求是必须返回一个boolean类型的值,当A值为true时运行TRUEA,当A值为false时运行FALSEB,其中TRUEA和FALSEB必须最终返回一个值。
  • 三目运算符可以看作是if-else语句的简化版本:
if(A){
  TRUEA
}else{
  FALSEB
}

等同于

A ? TRUEA : FALSEB

但三目运算符必然返回一个值,所以我们也可以把其看作方法的简化:

public int isA(boolean A){
  if(A){
    return TRUEA;
  }else{
    return FALSEB;
  }
}

同if语句一样,三目运算符也可以进行嵌套,无论是条件表达式还是返回的值。

  • 比如结果嵌套为另外的三目运算:
A ? ( B ? TRUEB : FALSEB) : FALSEA

A表达式先计算得到boolean类型结果。之后如果为真,
则进行(B ? TRUEB : FALSEB)运算,以这样的格式可以达到if–else-if–else 语句的效果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1206986.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python入口文件方便在其它目录也能执行

dir_path os.path.dirname(os.path.realpath(__file__)) parent_dir_path os.path.abspath(os.path.join(dir_path, os.pardir)) sys.path.insert(0, parent_dir_path)

优秀智慧园区案例 - 新华三未来工厂制造园,园区业务创新及零碳升级

目录 一、新华三未来工厂制造园建设背景 二、未来工厂制造园总体设计思路 三、未来工厂制造园建设内容 四、关键技术及创新点 五、应用效益与推广 关键词&#xff1a;智慧园区解决方案&#xff0c;智慧园区建设总体方案&#xff0c;智慧园区建设规划方案&#xff0c;智慧园…

J. Chem. Theory Comput. | AI驱动的柔性蛋白-小分子复合物建模

今天为大家介绍的是来自陈语谦教授团队发表在Journal of Chemical Theory and Computation的论文&#xff0c;“Equivariant Flexible Modeling of the Protein−Ligand Binding Pose with Geometric Deep Learning”&#xff0c;博士生董铁君为第一作者。该文提出了一种新的AI…

【nlp】2.2 传统RNN模型

传统RNN模型 1 传统RNN模型1.1 RNN结构分析1.2 使用Pytorch构建RNN模型1.3 传统RNN优缺点1 传统RNN模型 1.1 RNN结构分析 结构解释图: 内部结构分析: 我们把目光集中在中间的方块部分, 它的输入有两部分, 分别是h(t-1)以及x(t), 代表上一时间步的隐层输出, 以及此时间步的…

tcpdump wireshark简单使用

tcpdump工作原理 tcpdump 是 Linux 系统中非常有用的网络工具&#xff0c;运行在用户态&#xff0c;本质上是通过调用 libpcap 库的各种 api 来实现数据包的抓取功能&#xff0c;利用内核中的 AF_PACKET 套接字&#xff0c;抓取网络接口中传输的网络包。查 看 tcpdump 的 手册…

「Verilog学习笔记」用优先编码器①实现键盘编码电路

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点&#xff0c;刷题网站用的是牛客网 分析 用此编码器实现键盘的编码电路。 注意&#xff1a;编码器的输出是低电平有效&#xff0c;而键盘编码电路输出的是正常的8421BCD码&#xff0c;是高电平有效。因此将编…

优思学院:SPC控制线为什么是±3西格玛?

如果你曾是初次接触SPC控制图而有充满好奇心的质量工程师&#xff0c;那么你一定有一个疑问&#xff0c;就是SPC控制线为什么是3西格玛&#xff1f; 在开始深入讨论之前&#xff0c;让我们先了解一些控制图的基本概念。控制图通常有控制上限&#xff08;UCL&#xff09;和控制…

【数据结构】经典单链表OJ题!!

学习完单链表&#xff0c;习题就成了最好的巩固方式 目录 1.链表分割:思路&#xff1a;代码实现&#xff1a; 2.随机链表的复制:思路1&#xff1a;代码实现&#xff1a;思路2&#xff1a;代码实现&#xff1a; 3.环形链表:3.1环形链表1:思路&#xff1a;代码实现&#xff1a; 3…

VS设置--查看引用库源代码

1.工具-->选项-->文本编译器-->C#-->高级-->勾选支持导航到反编译源(试验)

Java项目开发:基于Springboot+vue口腔牙科诊所管理系统

项目介绍 本选题则旨在通过标签分类管理等方式&#xff0c;实现管理员&#xff1a;首页、个人中心、会员管理、病例就诊信息管理、牙齿保健产品管理、复查提醒管理、预约挂号管理、药品信息管理、留言板管理、系统管理、订单管理&#xff0c;会员&#xff1b;首页、个人中心、…

Mozilla 面向基于 Debian 的 Linux 发行版

导读Mozilla 公司今天发布新闻稿&#xff0c;表示面向 Debian、Ubuntu 和 Linux Mint 等基于 Debian 的发行版&#xff0c;推出了.deb 格式的 Firefox Nightly 浏览器安装包&#xff0c;便于用户在上述发行版中更轻松地安装。 本次更新的亮点之一在于采用 APT 存储库&#xff0…

【机器学习基础】机器学习的基本术语

&#x1f680;个人主页&#xff1a;为梦而生~ 关注我一起学习吧&#xff01; &#x1f4a1;专栏&#xff1a;机器学习 欢迎订阅&#xff01;后面的内容会越来越有意思~ &#x1f4a1;往期推荐&#xff1a; 【机器学习基础】机器学习入门&#xff08;1&#xff09; 【机器学习基…

界面控件DevExpress WPF Splash Screen,让应用启动画面更酷炫!

DevExpress WPF的Splash Screen组件可以为应用程序创建十分酷炫的启动屏幕&#xff0c;提高用户在漫长的启动操作期间的体验&#xff01; P.S&#xff1a;DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress …

(八)Spring源码解析:Spring MVC

一、Servlet及上下文的初始化 1.1> DispatcherServlet的初始化 对于Spring MVC来说&#xff0c;最核心的一个类就是DispatcherServlet&#xff0c;它负责请求的行为流转。那么在Servlet的初始化阶段&#xff0c;会调用init()方法进行初始化操作&#xff0c;在DispatcherSe…

刚刚!奥特曼终于透露了GPT-5的最新消息!

原 创作者 | Tscom、王二狗 大爆料&#xff01;OpenAI被实锤正在研发GPT-5&#xff01; 还是OpenAI的CEO Sam Altman 亲口证实的。 今日&#xff0c;奥特曼接受《金融时报》的采访&#xff0c;透露了很多OpenAI的下一步计划&#xff0c;二狗帮大家整理成以下10个要点&#x…

实现定时巡检接口,测试不通过时自动发邮件

背景是这样的&#xff1a;最近组织架构调整&#xff0c;我们这个团队部分人员调入到了另外的业务组&#xff0c;因此她之前负责的业务需要交接给我们。 其中一个是接口每日监测&#xff0c;之前这个同事的做法是每天去手动点下按钮来跑接口测试&#xff0c;然后看一眼接口测试…

这 11 个 for 循环优化你得会

日常开发中&#xff0c;经常会遇到一些循环耗时计算的操作&#xff0c;一般也都会采用 for 循环来处理&#xff0c;for 作为编程入门基础&#xff0c;主要是处理重复的计算操作&#xff0c;虽然简单好用&#xff0c;但在写法上也有很多的考究&#xff0c;如果处理不好&#xff…

容器化nacos部署并实现服务发现(gradle)

1.如何容器化部署mysql 2. 如何容器化部署nacos 为不暴露我的服务器地址&#xff0c;本文全部使用localhost来代替服务器地址&#xff0c;所有的localhost都应该调整为你自己的服务器地址。 为不暴露我的服务器地址&#xff0c;本文全部使用localhost来代替服务器地址&#x…

Vue中组件与插件:究竟有何不同?详细解析带你get到核心差异!

&#x1f3ac; 江城开朗的豌豆&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 &#x1f4dd; 个人网站 :《 江城开朗的豌豆&#x1fadb; 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 目录 ⭐ 专栏简介 &#x1f4d8; 文章引言 一、组…