【0001】通过三目(元)运算符对二个或者三个元素的数值比较大小输出实现,尤其是三目运算符的嵌套的理解_javascript中使用三元运算符比较两个数的大小-程序员宅基地

技术标签: 算法  java知识疑惑点  java  前端  java基础知识点  

【0001】通过三目(元)运算符对二个或者三个元素的数值比较大小输出实现,尤其是三目运算符的嵌套的理解


问题描述:

      当我们在使用三面运算符号的时候,一般涉及两个表达式大小关系的比较,甚至三个表达式关系比较,选择if选择结构实现三个数的比较就很  
 麻烦,而相对于使用选择结构选择三元运算符是更合理的选择。

三目运算符语法格式:

格式:条件表达式?值1:值2(条件表达式?True:False)

三目运算符嵌套语法格式:

格式:条件表达式?(条件表达式?值1:值2):(条件表达式?值1:值2)


举一个求数组中元素最小例子:

我这里举例是以三个数值运算通过三元运算符进行比较:
代码区如下:

        double min;
		double num[]=new double[3];
		num[0]=100;
		num[1]=150;
		num[2]=250;
		 min=num[0]<num[1]?num[0]<num[2]? num[0]:num[2]:num[1]<num[2]?num[1]:num[2];
		 //如果理解不了可以使用加上加括号的情况,和下面语句等价的
		 //min=num[0]<num[1]?(num[0]<num[2]? num[0]:num[2]):(num[1]<num[2]?num[1]:num[2]);

代码分析:

分析如下:

       1.首先解释顺序从左向右num[0]<num[1]?,第一个假设num[0]更小,
       则继续执行num[0]<num[2]?,又第二个假设num[0]更小,输出表达式num[0];其冒号之后的属于表达式2的内容;
       2.如果第一个假设不成立的话,直接跳到冒号之后的属于表达式2的内容,这个时候其实就知道
       num[0]不可能是最小的了,num[1]可能会成为最小值,于是继续执行num[1]<num[2]?,如果最小就输出表达式num[1],否则输出num[2];
       3.其实加上了花括号更容易理解:num[0]<num[1]?(num[0]<num[2]? num[0]:num[2]):(num[1]<num[2]?num[1]:num[2]):从左向右执行num[0]<num[1]?,假设num[0]更小成立则执行第一个大括号(num[0]<num[2]? num[0]:num[2]),第一个花括号是判断num[0]与num[2]谁大谁小然后输出,否则执行第二个花括号(num[0]<num[2]? num[0]:num[2])第二个花括号是判断num[1]与num[2]谁大谁小然后然后输出即可
       
       有问题可底下下评论会及时回复!!!

我这里举例是以三个数值运算通过if条件判断进行比较输出最小最大值(这里不进行解释,以前的文章里有解释):
代码区如下:

        int a, b, c;
		a = 1;
		b = 9;
		c = 101;
		if(a==b&&a==c&&b==c)
			System.out.println("无最大值最小值" );
		if (a >=b) {
    
			if (a > c) {
    
				System.out.println("输出最大数:" + a);
				if (b > c) {
    
					System.out.println("第二大的数:" + b);
					System.out.println("最小的数:" + c);
				} else {
    

					System.out.println("最小的数:" + c);
					System.out.println("第二大的数:" + b);
				}
			} else {
    

				System.out.println("输出最大数:" + c);
				System.out.println("第二大的数:" + a);
				System.out.println("最小的数:" + b);
			}
		}
		else {
    
			if (b > c) {
    
				System.out.println("输出最大数:" + b);
				if (a > c) {
    
					System.out.println("第二大的数:" + a);
					System.out.println("最小的数:" + c);
				} else {
    

					System.out.println("最小的数:" + c);
					System.out.println("第二大的数:" + a);
				}
			} else {
    

				System.out.println("输出最大数:" + c);
				System.out.println("第二大的数:" + b);
				System.out.println("最小的数:" + a);
			}
		}

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Caojian_0/article/details/125434772

智能推荐

raw_input() 与 input()_js指定rawinput位置-程序员宅基地

文章浏览阅读617次。这两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互。但他们的功能不尽相同。举两个小例子。 1 >>> raw_input_A = raw_input("raw_input: ") 2 raw_input: abc 3 >>> input_A = input("Input: ") 4 Input: abc 5 6 Traceback (most rec_js指定rawinput位置

centos7 php7 动态编译mysqlnd: configure: error: Cannot find OpenSSL's evp.h 错误解决_centos mysqlnd-程序员宅基地

文章浏览阅读6.9k次。centos7 php7 动态编译mysqlnd: configure: error: Cannot find OpenSSL's <evp.h> 错误解决开始以为是没有安装openssl, openssl-devel,安装后发现还是提示这个错误,搜索了一下evp.h,这个文件也存在。GOOGLE 了一下,在stackoverflow,找到了答案,原来是 phpize 生成的con..._centos mysqlnd

【起航计划 021】2015 起航计划 Android APIDemo的魔鬼步伐 20 App-&gt;Intents createChooser-程序员宅基地

文章浏览阅读271次。Intents 这个例子的代码非常简单: public void onGetMusic(View view) { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("audio/*"); startActivity(Intent.create

用Python学数学之Sympy代数符号运算_python symbols-程序员宅基地

文章浏览阅读1.1k次。在我们初、高中和大学近10年的学习时间里,数学一直占据着非常大的分量,但是回忆过去可以发现,我们把大量的时间都花在反复解题、不断运算上,计算方法、运算技巧、笔算能力以及数学公式的记忆仿佛成了我们学习数学的全部。这些记忆和技巧没几年就忘掉了,但很多人甚至还记得那份阴影;笔算与解题在AI、图形图像、数据分析等上被软件所取代。那我们学生时代的数学还剩下什么呢?计算器与数学说起数学计算器,我们常见的是加减乘除四则运算,有了它,我们就可以摆脱笔算和心算的痛苦。四位数以上的加减乘除在数学的原理上其实并不难,但是如果_python symbols

新技术计算机的案例,计算机新技术-程序员宅基地

文章浏览阅读549次。本书为大学计算机基础课程的配套实验教材内容包括Windows 7安装与桌面应用、电子文档的制作与编排、电子表格的制作规范与方法、演示文稿应用、互联网应用、数据库基础与数据处理(Access)、程序设计基础与算法、计算机实用工具的使用等¥27.70定价:¥39.80(6.96折)本书为大学计算机基础课程的配套实验教材内容包括Windows 7安装与桌面应用、电子文档的制作与编排、电子表格的制作规范与..._计算机专业群新技术案例

Android 实现WebView点击图片查看大图列表及图片保存_抖音小程序中 打开web-view之后 页面生成的图片如何点击下载-程序员宅基地

文章浏览阅读1w次,点赞6次,收藏61次。在日常开发过程中,有时候会遇到需要在app中嵌入网页,此时使用WebView实现效果,但在默认情况下是无法点击图片查看大图的,更无法保存图片。本问将就这一系列问题的实现进行说明。项目的知识点:1.加载网页后如何捕捉网页中的图片点击事件;2.获取点击的图片资源后进行图片显示,获取整个页面所有的图片;3.支持查看上下一张的图片以及对图片缩放显示;4.对图片进行保存;_抖音小程序中 打开web-view之后 页面生成的图片如何点击下载

随便推点

前端水印实现方案-程序员宅基地

文章浏览阅读406次。大厂技术坚持周更精选好文一、问题背景为了防止信息泄露或知识产权被侵犯,在web的世界里,对于页面和图片等增加水印处理是十分有必要的,水印的添加根据环境可以分为两大类,前端浏览器环境..._前端水印生成方案

PAT B1049/A1104 题解_pat b1049 c-程序员宅基地

文章浏览阅读254次。1104 Sum of Number Segments (20 分)Given a sequence of positive numbers, a segment is defined to be a consecutive subsequence. For example, given the sequence { 0.1, 0.2, 0.3, 0.4 }, we have 10 segme..._pat b1049 c

解决linux/config.h: No such file or directory_conin.h 没有那个文件或目录-程序员宅基地

文章浏览阅读1.9w次,点赞4次,收藏3次。问题: “linux/config.h: No such file or directory”原因与解决方法: 原因是2.6.19之后的内核没有了config.h文件,因此直接把对应的include注释掉即可。 或者添加头文件#include_conin.h 没有那个文件或目录

php微信分享带缩略图,网站实现微信分享带缩略图-程序员宅基地

文章浏览阅读289次。做网站的微信分享,之前一直获取不到缩略图和描述。后来总结了下经验。分享给大家参考。首先做微信分享我们需要一个 已经认证了的微信公众号 去绑定要分享的网站。然后设置服务器的白名单重点就是获取jssdk文件了。看文档说明wx.config({debug:true,// 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在p..._php 微信分享缩略图

简单背包问题(0032)_设有 一个 背包 能承 受重量 s(s>0), 又有 n(n>=1) 件物 品, 其 重 量 列 表-程序员宅基地

文章浏览阅读1.2k次。简单背包问题(0032)Time limit(ms): 1000Memory limit(kb): 65535Submission: 5792Accepted: 1753Didn't trying 搜索 动态规划 设有一个背包可以放入的物品重量为S,现有n件物品,重量分别是w1,w2,w3,…wn。 _设有 一个 背包 能承 受重量 s(s>0), 又有 n(n>=1) 件物 品, 其 重 量 列 表 为w=

一文看懂Web后端开发-程序员宅基地

文章浏览阅读2.8w次,点赞108次,收藏390次。一文看懂Web后端开发前言由于网络上系统地介绍后端开发的文章实在太少,而最近有恰巧有许多同学问我“什么是后端开发?”、“你为什么喜欢后端开发?”、“做后端都需要学什么?”,那么我们就来讲一讲,到底什么才是后端开发。定义后端开发(Back-End Development,也称服务端开发、服务器端开发等)是创建完整可运行的Web应用服务端程序(服务端程序和资源合称为后端,即在服务器上运行的、不涉及用户界面的部分)的过程,是Web应用程序开发的一部分。后端开发者使用Java、Golang等语言及其衍生的各_web后端开发

推荐文章

热门文章

相关标签