scala第一次学习

(学于《快学Scala》第二版)
在这里插入图片描述

字符串插值法(更好的做法):

	var a=9;
    val b=a*89
    print(f"hello,${b*0},${a*10}")

控制台输入:

import scala.io.StdIn
var print1=StdIn.readInt();/*StdIn.readInt(“请输入”)*/
println(print1)

for循环

scala 并没有与C++或JAVA一样的for循环,但可如下操作:
①for(i<- 1 to 10)
1 to 10是RichInt类的to方法,从1到n(含)的Range;
for(i<-表达式) 让变量i遍历右边表达式中的所有值;
不用定义i是否属于val还是var,该变量的类型是集合的元素类型

如:

val s="hello"
var sum =0
for(i<-0 to s.length-1)
sum+=s(i)//s(i)类似于java的s.charAt(i);

事实上,本例中我们并不需要使用下标

var sum =0
for(ch<-"Hello")
sum+=ch

在scala中for循环用的并不多,书中第12章有讲到**(暂)**

break

使用break时,需要使用Breaks对象中的break方法:

import scala.util.control.Breaks._

高级for循环

可以以变量<-表达式的形式提共多个生成器,用分号分开
for(i<-1 to 3; j<-1 to 3) print(f"${10*i+j}%3d)
每个生成器可以自带守卫,一个以if开头的Boolean表达式

for(i<-1 to 3; j<-1 to 3 if i!j) print(f"${10*i+j}%3d)

也可以使用多个定义,引入可以在循环中使用的变量

for(i<-1 to 3;from = 4-i; j<-from to 3) print(f"${10*i+j}%3d)

yieldJenrey博友的精彩解析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值