- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北风网项目实战培训 ·if表达式的定义:在Scala中,if表达式是有值的,就是if或者else中最后一行语句返回的值。 ·例如,val age = 30; if (age 18) 1 else 0 ·可以将if表达式赋予一个变量,例如,val isAdult = if (age 18) 1 else 0 ·另外一种写法,var isAdult = -1; if(age 18) isAdult = 1 else isAdult = 0,但是通常使用上一种写法 ·if表达式的类型推断:由于if表达式是有值的,而if和else子句的值类型可能不同,此时if表达式的值是什么类型呢?Scala会自动进行推断,取两个类型的公共父类型。 ·例如,if(age 18) 1 else 0,表达式的类型是Int,因为1和0都是Int ·例如,if(age 18) adult else 0,此时if和else的值分别是String和Int,则表达式的值是Any,Any是String和Int的公共父类型 ·如果if后面没有跟else,则默认else的值是Unit,也用()表示,类似于java中的void或者null。例如,val age = 12; if(age 18) adult。此时就相当于if(age 18) adult else ()。 ·将if语句放在多行中:默认情况下,REPL只能解释一行语句,但是if表达式通常需要放在多行。 ·可以使用{}的方式,比如以下方式,或者使用:paste和ctrl+D的方式。 if(age 18) { adult } else if(age 12) teenager else children if表达式 ·默认情况下,scala不需要语句终结符,默认将每一行作为一个语句 ·一行放多条语句:如果一行要放多条语句,则必须使用语句终结符 ·例如,使用分号作为语句终结符,var a, b, c = 0; if(a 10) { b = b + 1; c = c + 1 } ·通常来说,对于多行语句,还是会使用花括号的方式 if(a 10) { b = b + 1 c = c + 1 } ·块表达式:块表达式,指的就是{}中的值,其中可以包含多条语句,最后一个语句的值就是块表达式的返回值。 ·例如,var d = if(a 10) { b = b + 1; c + 1 } 语句终结符、块表达式 ·print和println:print打印时不会加换行符,而println打印时会加一个换行符。 ·例如,print(Hello World); println(Hello World) ·printf:printf可以用于进行格式化 ·例如,printf(Hi, my name is %s, Im %d years old.\n, Leo, 30) ·readLine: readLine允许我们从控制台读取用户输入的数据,类似于java中的System.in和Scanner的作用。 ·综合案例:游戏厅门禁 val name = readLine(Welcome to Game House. Please tell me your name: ) print(Thanks. Then please tell me your age: ) val age = readInt() if(age 18) { printf(Hi, %s, you are %d years old, so you are legel to come here!, name, age) } else { printf(Sorry, boy, %s, you are only %d years old. you are illegal to come here!, name, age) } 输入和输出 ·while do循环:Scala有while do循环,基本语义与Java相同。 var n = 10 while(n 0) { println(n) n -= 1 } ·Scala没有for循环,只能使用while替代for循环,或者使用简易版的for语句 ·简易版for语句:var n = 10; for(i - 1 to n) println(i) ·或者使用until,表式不达到上限:for(i - 1 until n) println(i) ·也可以对字符串进行遍历,类似于java的增强for循环,for(c - Hello World)
您可能关注的文档
最近下载
- (PPT)考勤管理制度.ppt VIP
- 安顺西秀富民村镇银行招聘考试真题及答案2022.pdf VIP
- 2021年青岛市临床营养质控中心年终考核暨下半年工作检查.docx VIP
- 2025年压力容器考试题库3带答案.doc VIP
- 2024贵州安顺普定富民村镇银行招聘笔试备考题库及答案解析.docx VIP
- 昆明元朔建设有限公司高速收费岗位笔试题.docx VIP
- 2021年安徽高考政治试卷.pdf VIP
- 九年级化学演示实验通知单(全册)资料.doc VIP
- 提高基建档案规范化管理——[ 获奖QC 成果发布 ].pdf VIP
- 2025贵州望谟富民村镇银行股份有限公司招聘考试参考题库附答案解析.docx VIP
文档评论(0)