java - while循环条件说明
问题描述
我有以下代码,其中包含一个 while 循环,但是,我不确定 while 循环的一部分是做什么的。
int a=nums[i];
while(i+1<nums.length&&(nums[i+1]-nums[i])==1)
{
i++;
}
我有一个 nums 数组,需要创建它的摘要范围。你能解释一下while循环的参数是什么意思吗?
解决方案
循环只有一个参数或表达式while
:如果计算结果为 则保持循环运行的条件,或者如果计算结果为true
则结束循环的条件false
。https://docs.oracle.com/javase/tutorial/java/nutsandbolts/while。
鉴于在循环体中,i
正在递增,代码将更好地使用for
循环。https://docs.oracle.com/javase/tutorial/java/nutsandbolts/for.html
代码有一个复合条件,这两个条件都必须是true
要执行的循环体。两者都必须为真,因为使用了布尔 AND 运算符&&
。
第一个条件通过检查i+1
不超过数组nums
长度并且实际上最多比长度少一个来检查没有发生 OutOfBounds 错误。第二个条件检查以下元素是否正好比当前元素大 1。
希望这可以帮助!
推荐阅读
- android - 有没有办法读取小米(Redmi)的电池权限以进行后台进程?
- java - 当两个单独的应用程序使用同一个数据库时,Hibernate 一级缓存结果是否会过时?
- arangodb - Arangosh 和 Web UI 都无法访问 lodash 模块
- c++ - how to remove only one hyphen (first occurance) from the string(file name) in CPP?
- c - 在 Solaris 机器 5.11 上找不到 sys/fdio.h(软盘控制操作)
- react-native - 无法从反应导航工作中获取标签栏
- python - 重新启动循环以迭代用户字符串
- javascript - How do you inject this code into HTML using Javascript?
- swift - 如何在领域swift中实现json
- python - 具有多个测试类的python单元测试