当while语句中的条件为真时,执行while循环,一直到条件为假时结束循环,其中条件(括号内的表达式)需要返回一个boolean类型的值,用来判断是否进行循环执行循环体代码。
当条件不成立时跳出循环。
若想实
现一个死循环,则可以直接给条件赋值为true。while语句是“先判断,再执行”;有可能一次也不执行(条件设
为false)相当于while语句被忽略不执行。
示例(执行1到10的整数求和):
int i = 1;
int sum = 0;
while(i<10){
sum += i;
i++;
}
2.do-while语句
}while(条件)
与while循环有所不同,while循环需要先判断条件再执行循环,而do-while语句是先执行一次循环体代码,然后再根据条件判断是否继续执行循环。
当条件不成立时跳出循环。
示例(执行1到10的整数求和):
int i = 1;
int sum = 0;
do{
sum +=i;
i++;
}while(i<10);
3.for循环语句
for(初始条件表达式;条件表达式;变量赋值表达式){
for循环中的三个表达式均可以省略,
初始条件表达式可以由0到多个变量初始赋值组成,条件表达式需要是返回boolean值得表达式,变量重新赋值表达式可以是0到多个变量的赋值。
当条件满足条件表达式时,执行循环体代码,每次循环体执行完毕,执行变量赋值表达式,然后再继续通过条件判断是否执行循环体;当条件不成立时跳出循环。
示例(执行1到10的整数求和):
int sum = 0;
for(int i = 1;i<10;i++){
sum +=i;
}
4.for-each循环
for(var :ary){
for-each循环又叫增强型for循环,用来遍历数组和集合的,使用前需要有数组或集合,括号中“:”前的var是指存放一个数组或集合的成员类型的变量,“:”后的ary为一个数组或集合。该循环会将整个数组或集合中的数据遍历一遍并用这些数据执行循环体,这些数据在循环体中用括号中的那个变量var来表示。
示例(执行1到10的整数求和):
int sum = 0;
int [] ary = {1,2,3,4,5,6,7,8,9,};
for (int i : ary) {
sum += i;
}
注意:for-each循环并不能给当前遍历的数组/集合内进行赋值运算,只能进行对其进行遍历,该过程相当于只是对改数组/集合进行取值并使用,括号内的“:”前面的变量var并不是数组/集合内的对象,其只是一个承接数据的变量,相当于,用来接收数据的变量,并不是原数组/集合ary内的成员。
int [] ary = {1,2,3,4,5,6,7,8,9};
for (int i : ary) {
i
= 1
执行后的ary
= {1,2,3,4,5,6,7,8,9};
并不是{1,1,1,1,1,1,1,1,1,1},ary的值未变。
循环的终止操作
使用break和continue关键词来操作终止循环,其中break关键字用来终止整个循环,跳出循环,执行循环后的操作;continue关键字用来终止当前循环体的操作,使循环进入条件判断。若是循环嵌套,break和continue只能终止它们所在的最底层的循环操作,若要终止叫外层的操作,需要用标签标注外层循环,并将标签加在break和continue关键词后面标示。
int sum = 0;
lable:
for(int i = 1;i<=1
5
;i++){
for(int j=1;j<10;j++){
sum +=j;
if(j=
=9
) break lable;
}
}
执行结果sum=55;当i=1时,内层循环执行j=9时,
sum +=j
得sum=45,满足
if(j==
9
)
执行
break lable
,直
接跳出外层循环,并不执行内层j=10和外层i=2。
在网上看了一些for循环的效率问题,发现基本上都是一些理论的东西,且大多都是Copy来的,前后文自相矛盾。自己做了一个例子,来看看他们的效率
private long getTime1() {
long time = 0;
int count = 0;
long timenow = System.currentTimeMillis();
for (String str : strs) {
count
++
;
return System.currentTimeMillis() - timenow;
2.比较慢
private long getTime2() {
long time = 0;
int count = 0;
long timenow = System.currentTimeMillis();
for (int i=0;i<strs.size();i
++
) {
count
++
;
return System.currentTimeMillis() - timenow;
private long getTime3() {
long time = 0;
int count = 0;
int size=strs.size();
long timenow = System.currentTimeMillis();
for (int i=0;i<size;i
++
) {
count
++
;
return System.currentTimeMillis() - timenow;
编程的基础之一就是语言和语句了,只要有了解过C语言、
Java
等等语言了,今天我们来了解一下
循环语句
。不知道大家对有没有听过这个概念呢?一、
循环语句
的概念1.含义
循环语句
可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。2.优点它的优点就是循环...
Zaid Daghest..33振作起来.并尝试密切关注,这将作为
开发
者非常宝贵.虽然循环真的应该只在一个单独的线程
中
实现.单独的线程就像在您的应用
中
运行的第二个进程.强制关闭的原因是因为你在UI线程
中
运行循环,使得UI无法执行任何操作,除了通过该循环.您必须将该循环放入第二个Thread
中
,以便UI Thread可以自由运行.线程化时,除非您在UI线程
中
,否则无法更新GUI.以下是在这种情况下如...
1.初始化变量:就是用var 声明的一个普通变量,在循环(代码块)开始之前执行。通常用于计数器的使用。可以不写。
2.条件表达式 就是用来决定每一次循环是否继续执行,就是终止的条件
3.操作表达式:会在循环(代码块)每次被执行后执行。是每次循环最后执行的代码 经常用于我们计数器变量进行更新(递增或者递减)
for(var i = 0; i<=5; i
++
){
console.
我相信很多朋友可能之前已经百度过i
++
和
++
i的相关文章了,也做过不少的练习,觉得自己已经深刻掌握了它们之间的原理了,真的是这样的吗?来试试计算一下我下面提供的几道练习,你就会发现你又不会了!
有些程序段在某些条件下重复执行多次,称为循环结构程序。
Java
提供了3种
循环语句
实现循环结构,包括while语句、do-while语句、for语句。它们的共同点是根据给定条件来判断是否继续执行指定的程序段(循环体)。如果满足执行条件,就继续执行循环体,否则就不再执行循环体,结束
循环语句
。
1:while循环
while循环的语法如下:
while(布尔表达式){
循环体;
布尔表达式表示循环体执行的条件,当条件为true时执行循环体。
循环体既可以是一条
简单
的
前言内存管理的目的就是让我们在
开发
过程
中
有效避免我们的应用程序出现内存泄露的问题。内存泄露相信大家都不陌生,我们可以这样理解:「没有用的对象无法回收的现象就是内存泄露」。如果程序发生了内存泄露,则会带来以下这些问题应用可用的内存减少,增加了堆内存的压力降低了应用的性能,比如会触发更频繁的 GC严重的时候可能会导致内存溢出错误,即 OOM Error下面我们从基础说起基础知识
Java
的内存分配简述...
SuperMap iMobile
开发
入门(iMobile 10i + AS3.6)超图防坑指南文章概要AS3.6安装、SuperMap iMobile 10i下载HelloMap工程创建HelloMap示例代码HelloMap完整工程下载
超图防坑指南
机缘巧合,报名了超图的 命题
开发
组竞赛,想着,就是写个小作业,就能完成,顺便领个小证书啥的。 不过, 哎?? 超图这坑太深了吧!他们的视频教程做了好多遍,细究了好多的细节(大概就是 仔细看每帧视频画面吧),也没能Debug Successful。在超图
来源:https://urlify.cn/Abyuy前言写在前面:前些天看完了JVM的内存结构,自以为自己是懂了,心里想想不就是分线程共享和线程私有嘛,然后又怎么怎么分怎么怎么的嘛…直到...
1、冒泡排序冒泡排序,数组从小到大排列,比较相邻的元素。如果第一个比第二个大,就交换他们两个。示例:/** 冒泡排序* 前后两个元素相比较,最大的往后排,每一轮都可以找到一个最大的元素*/publicstaticint[] bubbleSort(int[] nums){int temp =0;for (int i = 0; i < nums.length-1; i
++
) {for (int ...