文章目录
主要内容一、方法的定义和使用1. 方法的定义2.示例代码:
二、默认参数的使用1. 概念2. 示例代码
三、命名参数的使用(不推荐使用)1. 示例代码
四、可变参数1. 示例代码
五、条件表达式1. 示例代码六、循环表达式1. 种类2. 示例代码3.注意
主要内容
方法的定义和使用默认参数的使用命名参数的使用可变参数的使用条件表达式循环表达式
一、方法的定义和使用
1. 方法的定义
def 方法名(参数名:参数类型): 返回值类型 = { // 括号内的叫做方法体 // 方法体内的最后一行为返回值, 不需要使用return }
def
min(x
: Int
, y
: Int
): Int
= {
if(x
> y
)
y
else
x
}
2.示例代码:
object Scala_Function
{
def
main(args
: Array
[String
]): Unit
= {
println(add(5,4))
println(three())
println(three
)
HelloWorld()
HelloWorld
}
def
add(x
: Int
, y
: Int
):Int
={
x
+ y
}
def
three() = 1 + 2
def
HelloWorld(): Unit
={
println("Hello World!")
}
}
输出结果:
二、默认参数的使用
1. 概念
在函数定义时,允许指定参数的默认值
2. 示例代码
object Scala_Function2
{
def
main(args
: Array
[String
]): Unit
= {
sayHello()
sayHello("Hello World")
}
def
sayHello(name
: String
= "Hello"): Unit
={
println(name
)
}
}
输出结果:
三、命名参数的使用(不推荐使用)
1. 示例代码
object Scala_Function3
{
def
main(args
: Array
[String
]): Unit
= {
sayHello("小红",18)
sayHello(name
= "小明",age
= 18)
}
def
sayHello(name
: String
, age
: Int
): Unit
={
println("名字:"+name
, "年龄:"+age
)
}
}
输出结果:
四、可变参数
1. 示例代码
object Scala_Function4
{
def
main(args
: Array
[String
]): Unit
= {
println(sum(1))
println(sum(1,2))
println(sum(1,2,3))
}
def
sum(numbers
: Int
*): Int
={
var result
= 0
for (number
<- numbers
)
result
+= number
result
}
}
输出结果:
五、条件表达式
1. 示例代码
object Scala_Function5
{
def
main(args
: Array
[String
]): Unit
= {
val x
= 1
var a
= if(x
> 0) true else false
println(a
)
}
}
输出结果:
六、循环表达式
1. 种类
toRangeuntilforforeachwhile
2. 示例代码
object Scala_Function6
{
def
main(args
: Array
[String
]): Unit
= {
println(1 to
10)
println(1 until
10)
println(Range(1,10))
println("------to until Range---------")
print("1 to 10 = ")
for( i
<- 1 to
10) {
print(i
+ " ")
}
println()
print("Range(1,10) = ")
for(i
<- Range(1, 10)){
print(i
+" ")
}
println()
print("1 until 10 = ")
for(i
<- 1 until
10){
print(i
+" ")
}
println()
print("1.to(10) = ")
for(i
<- 1.to(10)){
print(i
+" ")
}
println()
print("1.until(10) = ")
for(i
<- 1.until(10)){
print(i
+" ")
}
println()
print("带有步长(step = 2)的Range = ")
for(i
<- Range(1, 10, 2)){
print(i
+" ")
}
println()
println("------for and foreach--------")
val names
= Array("Bob","John","Scala")
println("foreach: ")
names
.foreach(name
=> print(name
+" "))
println()
println("for: ")
for(a
<- names
){
print(a
+" ")
}
println()
println("--------while-------")
var
(number
, sum
) = (100, 0)
while(number
> 0){
sum
+= number
number
-= 1
}
print(sum
)
}
}
输出结果:
3.注意
1 to 10 是 [1,10]Range(1,10) 和 1 until 10 是 [1,10)to 和 until 在底层调用的都是Range