scala语言入门小练习


1.如何检测一个变量是val还是var?
给变量重新赋值看值是否可变
2.在Scala中如何获取字符串“Hello”的首字符和尾字符?
3.统计三个班的成绩情况,每个班有五名同学,每位同学的成绩自己输入,求出每个班的平均分和所有班级的平均分?
4.打印出九九乘法表
5.100个以内的数求和,求出和大于20 的当前数?

object day01 {

  //main函数
  def main(args: Array[String]): Unit = {
    //简单输出
    val name: String = "hello scala"
    println(name)

//循环1
var a = 0
for (a <- 3 to 6) {
  println("a:" + a)
}

//循环2
val list = List(2, 3, 4, 5, 6)
list.foreach(i => {
  println("list:" + i)
})

//循环3
for (j <- 1 until list.length) {
  println("list2:" + list(j))
}

//循环4
var n = 0;
for (n <- list) {
  println("list3:" + n)
}

//九九乘法表
for (i <- 1 to 9) {
  for (j <- 1 to i) {
    print(j + "*" + i + "=" + (j * i) + "\t")
  }
  println()
}

//自定义函数
add(8, 7)

1.给变量重新赋值看值是否可变

val q = "abc"
q.getClass

var w = "abc"
w = "qwe"

2.Scala中如何获取字符串“Hello”的首字符和尾字符?

val e = "hello"
println("获取字符串“Hello”的首字符" + e.charAt(0))
println(e(0))
println(e.head)
println(e.substring(0,1))
println(e.take(1))

println("获取字符串“Hello”的尾字符" + e.charAt(e.length - 1))
println(e.last)
println(e.reverse(0))
println(e.reverse.head)
println(e.substring(e.length-1,e.length()))
println(e.takeRight(1))

3.统计三个班的成绩l情况,每个班有五名同学,每位同学的成绩自己输入

//,求出每个班的平均分和所有班级的平均分?
val class1 = List(88, 89, 93, 95, 100)
val class2 = List(91, 93, 96, 95, 99)
val class3 = List(87, 98, 93, 95, 91)

var sum1 = 0
var sum2 = 0
var sum3 = 0
var y = 0
for (i <- 0 until 5) {
  println("请输入班级1的一位学生成绩")
  y = Console.readLine().toInt //还可以 readInt;
  sum1 += y
}
println("班级一平均分:" + sum1 / 5)
for (i <- 0 until 5) {
  println("请输入班级2的一位学生成绩")
  y = Console.readLine().toInt
  sum2 += y
}
println("班级二平均分:" + sum2 / 5)
for (i <- 0 until 5) {
  println("请输入班级3的一位学生成绩")
  y = Console.readLine().toInt
  sum3 += y
}
println("班级三平均分:" + sum3 / 5)

println("所有班级的平均分:" + (sum1 + sum2 + sum3) / 15)

4.九九乘法表

for (i <- 1 to 9) {
  for (j <- 1 to i) {
    print(j + "*" + i + "=" + j * i + "\t")
  }
  print("\n")
}

5.100个以内的数求和,求出和大于20 的当前数

var sum = 0
var u: Boolean = true
for (i <- 1 to 100 if u == true) {
  sum = sum + i
  if (sum > 20) {
    println("i=" + i)
    u = false
  }
}

6. 懒加载变量 只能是val常量

lazy val haha=(print("lanjiazai"))
//只有调用haha 才能输出
haha

//差值器
//1.s差值器
val name1:String="cat"
println(s"she is name is ${name1}")
//2.f差值器
val height=1.23568
println(f"身高是${height}%.2f")
//3.raw差值器
  //没有使用raw
  println("a\nb\n\tc")
//使用的效果
println(raw"a\nb\n\tc")

val str = Console.readLine()
println(str)

}

7.加法自定义函数

  def add(a: Int, b: Int): Int = {
    println(a + "+" + b + "=" + (a + b))
    a + b
  }

}

猜你喜欢

转载自blog.csdn.net/gzzBlogs/article/details/94757916