scala - Scala,查找值是否在两个整数之间
问题描述
我有一组值
guests [1,2G,5G,5,6,8lalala,74,2zooo,555,654,22,21,19,4,5,2,10,11]
我需要找出“6”是否在0 到 15之间
我尝试了以下方法:
if(Math.min(0, guests.toInt) == Math.max(guests.toInt, 15)) return xxxxxx
我什么也没得到,好像我的 if 语句被一起跳过了
请注意,我不想返回布尔值
解决方案
这个条件:
Math.min(0, guests.toInt) == Math.max(guests.toInt, 15)
总会失败。
在i
0 到 15 之间,Math.min(0, i)
将始终返回 0。
在i
0 到 15 之间,Math.max(i, 15)
将始终返回 15。
所以你会比较0 == 15
。
对于低于 0 或高于 15 的整数,您将拥有:
less than 0 == 15
或者
0 == more than 15
你真正想写的是:
val i = guests.toInt
if (0 <= i && i <= 15) xxxxxx
else { some other value }
推荐阅读
- gcc - execstack 标志的行为
- react-native - UNSAFE_componentWillMount 的安全替代方案?
- javascript - 如何通过 javascript 在 stenciljs 阴影组件中设置 css 变量
- javascript - Eslint 错误,规则“import/no-cycle”的配置无效
- sql - 在 Oracle 中运行速度极慢的 Postgres 查询
- mysql-connector - 如何在 SLES 12 中安装 mysqlclient?
- regex - 点所有正则表达式以匹配和捕获文件中的两个标记
- python - MATLAB fmincon 和 scipy 优化之间的不同行为最小化
- azure-data-factory - ADF 管道中的 CMK 使用
- javascript - 如何在 puppeteer 中通过请求拦截来拦截响应文本?