循环 又是一个老生常谈的问题。Java中的循环大概有:while、do……while、for等。
我们先从头来看:
一:while循环
语法结构:
while( 布尔表达式 ) { //循环内容 }
我们来测试一下:
public class one {
/**
* main函数
* @param args
*/
public static void main(String[] args)
{
// 调用测试while循环函数
(new one()).whileS();
}
/**
* while 循环
*/
public void whileS()
{
// ==================================================
// 语言多重多样,while循环万变不离其宗。先判断,后执行。
int x = 10;
while(x > 0)
{
System.out.print("value of x : " + x );
System.out.print("\n");
x--;
}
}
}
输出:
value of x : 10
value of x : 9
value of x : 8
value of x : 7
value of x : 6
value of x : 5
value of x : 4
value of x : 3
value of x : 2
value of x : 1
二:do-while循环
语法结构:
do {
//代码语句
}while(布尔表达式);
我们来测试一下:
public class one {
/**
* main函数
* @param args
*/
public static void main(String[] args)
{
// 调用测试do-while循环函数
(new one()).doWhileS();
}
/**
* do-while循环
*/
public void doWhileS()
{
// =============================================
// 语言多重多样,do-while循环万变不离其宗。先执行,后判断。
int x = 10;
do{
System.out.print("value of x : " + x );
System.out.print("\n");
x--;
}while(x > 0);
}
}
输出:
value of x : 10
value of x : 9
value of x : 8
value of x : 7
value of x : 6
value of x : 5
value of x : 4
value of x : 3
value of x : 2
value of x : 1
看到这里,我发现了一个小问题,那就是,while和do-while的区别是什么呢?简单讲:while是先判断,满足条件后在进入循环。不满足条件则不会进入。
Do-while是先执行,在判断,也就是说,无论判断条件是否满足条件,都会进入一次循环体。
这个一定要搞清楚,do-while在某些场景下有大用处。
三:for循环
虽然所有的循环都可以使用while、do-while来实现,但是,我一般不咋用,我用的比较多的是for循环。Java同样为我们提供了 for循环。
语法结构:
for(初始化; 布尔表达式; 更新) { //代码语句 }
我们来测试一下:
public class one {
/**
* main函数
* @param args
*/
public static void main(String[] args)
{
// 调用测试for循环函数
(new one()).forS();
}
/**
* 测试for循环
*/
public void forS()
{
// ===============================================================
// 语言多重多样,普通的for循环万变不离其宗。
for(int x = 10; x < 20; x++)
{
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
}
输出:
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
四:增强版for循环
For循环相对来说还是比较麻烦,java为我们提供了另一种增强版的for循环。
语法结构:
for(声明语句 : 表达式) { //代码句子 }
声明语句: 声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
表达式: 表达式是要访问的数组名,或者是返回值为数组的方法。
我们来测试一下:
public class one {
/**
* main函数
* @param args
*/
public static void main(String[] args)
{
// 调用测试for循环函数
(new one()).forS();
}
/**
* 测试for循环
*/
public void forS()
{
// ======================================
// 语言多种多样,java的for循环是有增强版的~
// 测试增强版的for循环需要用到数组……嗯,好像是又超纲了,就当曾经认识过她,循环完事才是数组……
int [] array = {1,2,3,4,5,6,7,8,9};
for(int x:array)
{
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
}
输出:
value of x : 1
value of x : 2
value of x : 3
value of x : 4
value of x : 5
value of x : 6
value of x : 7
value of x : 8
value of x : 9
增强版的for循环,相对于for循环,语法相对简单了一些。嗯,大概是这个样子。
五:嵌套循环
循环是可以嵌套循环的,我觉得我好想再说废话,测试这个得想个好玩的东西,使用for循环嵌套输出个九九乘法表吧。
public class one {
/**
* main函数
* @param args
*/
public static void main(String[] args)
{
// 调用测试99乘法表
(new one()).nine();
}
/**
* 99乘法表
*/
public void nine()
{
for (int i = 1;i <= 9;i++)
{
System.out.print("\n");
for (int k = 1;k <= i;k++)
{
int res = k * i;
System.out.print( k + " * " + i + " = "+res+" | " );
}
System.out.print("\n");
}
}
}
输出:
六:跳出循环
跳出循环这里有两个关键字:break、continue。
我这里仍然使用for循环来进行测试。
1:break
break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。
break 跳出最里层的循环,并且继续执行该循环下面的语句。
我们来测试一下:
/**
* break跳出循环
*/
public void keyBreak()
{
// ================================================
// 语言多重多样,普通的for循环万变不离其宗。
for(int x = 10; x < 20; x++)
{
if(x == 15)
{
break;
}
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
输出:
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
通过输出的结果,我们可以看到,当循环到15的时候直接跳出了循环
2:continue
continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
在 for 循环中,continue 语句使程序立即跳转到更新语句。
在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。
我们来测试一下:
/**
* break跳出循环
*/
public void keyContinue()
{
// ===============================================================
// 语言多重多样,普通的for循环万变不离其宗。
for(int x = 10; x < 20; x++)
{
if(x == 15)
{
continue;
}
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
输出:
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 16
value of x : 17
value of x : 18
value of x : 19
通过输出的结果,我们可以看到,当循环到15的时候直接跳出了本次循环,继续进行下一次循环。
以上大概就是java循环的基本知识,有好的建议,请在下方输入你的评论。