编译、运行Scala有3种方式:
1、命令行
单行
多行– :paste
ctrl+d
2、REPL
解释器
首先通过cmd进入代码文件所在的目录
第二步:scalac xxx.scala 得到.class文件
第三步:scala xxx
3、idea
在线
离线
=========================================
//带着编号输出10次hello word
//java for语法:for(int i = 0 ;i < 10 ;i++){System.out.println(i+”hello word”)}
//1.范围遍历
for(i <- 1 to 10){ //从一到十
println(i+”.hello word”)
}
//本质是,调用了1的.to()方法
//但是对象的调用可以省略点 用空格代替 类型int也省略了
// 1.to(10) 表示的是创建了这样一个类型(Range—集合类型)的对象 for循环遍历的就是这个对象里的元素
for(i :Int <- 1.to(10)){
println(i+”.hello word”) //to 输出 1到10 包括1和10
}
println(“===================”)
//不包含边际的遍历
for (i<- Range(1,10)){
println(i+”.hello word”) //Range对象 输出 1到9 包括1和9
}
println(“===================”)
for (i <- 1 until 10){
println(i+”.hello word”) //until 到十结束 不包含10 输出1到9
}
=======231024==========
a = 10
b = 90
sum = 10
sum *= a+b
sum= sum*(a+b)
11111111
11111111
11111111
11111111
11111111
11111111
11111111
1111111
1000000000000000000000000000000000000000000000000000000000000000
if((a>b)&&(sum++))
{println(“hello “)}
println(sum) //10
val x = -12+13 双目(运算对象)运算符
单目
val s = “hello world”
==
字符串的插值:
val name = “Tom”
val age = 60
val address = 北京市海淀区双清路8号
结果:my name is Tom, i was 60 years old,i was living
北京市海淀区双清路8号
s”my naem is $name, i was $age years old,i was living in
$address”
f””
raw”\n”
for(x<-结果) 语句
String.foreach(x=>语句)
String.map() Vector
StringBilder
var s = “hell world”
s.append(“!”)
StringBuffer
替换身份中的数字
val iden=”123456781234″
val sb = StringBilder()
首先把iden中需替换的字符串“1234”的索引,存放到一个indexs(8,9,10,11)
然后遍历iden:
如果发现8,9,10,11在iden中出现了,替换为*
如果没有发同8,9,10,11在iden中出现,把原来的字符放入到sb
sb–