Scala while和do while循环
编程语言中的循环是一种功能,它有助于在某些条件评估为真时重复执行一组指令/函数。循环使程序员的工作更加简单。Scala提供了不同类型的循环,但在本文中我们将了解while和do-while循环。
while循环
在编程过程中,可能会有这样的情况:我们需要重复执行直到满足某个条件。在这种情况下,就会使用while循环。一个while循环通常在括号中接受一个条件。如果条件为 “真”,那么在while循环的主体中的代码将被执行。当我们不知道要执行循环的次数,但我们知道循环的终止条件时,就可以使用while循环。循环停止的条件被称为中断条件。
语法:
while (condition)
{
// Code to be executed
}
流程图:
例子: 执行While循环
// Scala program of while loop
// Creating object
object GFG
{
// Main method
def main(args: Array[String])
{
// variable declaration (assigning 5 to a)
var a = 5
// loop execution
while (a > 0)
{
println("a is : " + a)
a = a - 1;
}
}
}
输出:
a is : 5
a is : 4
a is : 3
a is : 2
a is : 1
例子: 在一个数组中寻找元素
// Scala program of while loop
// Creating object
object GFG
{
// Main method
def main(args: Array[String])
{
// variable declaration (assigning 5 to a)
var a = Array("do_while", "for", "while")
var index = 0
// loop execution
while (index < a.length)
{
if(a(index) == "while")
println("index of while is " + index)
index = index + 1
}
}
}
输出:
index of while is 2
注意: 要执行以下命令,请使用Intellij。将此程序保存为file_name.scala格式,并在Intellij中使用scala运行它。
do while 循环
do…while循环与while循环几乎相同。唯一的区别是,do…while循环至少运行一次。条件在第一次执行后被检查。当我们希望循环至少运行一次时,就会使用do…while循环。它也被称为退出控制循环,因为条件在执行循环后被检查。在while循环中,条件被放置在循环的顶部,而在do while循环中,条件被放置在最后,由于条件的这种定位,do while下的所有语句至少被执行一次。
语法:
do {
// statements to be Executed
} while(condition);
流程图:
例子: do while 循环的执行
// Scala program of do-while loop
// Creating object
object GFG
{
// Main method
def main(args: Array[String])
{
// variable declaration (assigning 5 to a)
var a = 5;
// loop execution
do
{
println("a is : " + a);
a = a - 1;
}
while (a > 0);
}
}
输出:
a is : 5
a is : 4
a is : 3
a is : 2
a is : 1
例子: 运行循环直到我们在数组中遇到一个字符串
// Scala program for do-while loop
// Creating object
object GFG
{
// Main method
def main(args: Array[String])
{
// Declaring an array
var a = Array("hello", "This", "is", "geeksforgeeks", "bye")
var str = "bye"
var i = 0
// loop execution
do
{
println("program is saying " + a(i));
i = i + 1;
}
while (a(i) != str);
}
}
输出:
program is saying hello
program is saying This
program is saying is
program is saying geeksforgeeks
在上面的代码中,不会打印bye。