val name: String = "alice"
val age: Int = 22
println(age + "years old " + name + "work as programmer")
// “*”将一个字符串复制多次并拼接
println(name * 3) //result:alicealicealice
//(2)printf用法:字符串,通过"%"传值。 %:占位符 一种对C语言的延续
printf("%s who is %d years old, work in Tencent.", name, age)//result:alice who is 22 years old, work in Tencent.
println()
//(3)字符串模板(插值字符串) : 通过“$”获取变量值
println(s"${name} who is ${age} years old, work in Alibaba.")//result:alice who is 22 years old, work in Alibaba.
// val num: Float = 2.3456f//defult Double
val num: Double = 2.3456
println(s"The num is ${num}")//result:The num is 2.3456
println(f"The num is ${num}%2.2f") //formatting Template string 前2表示整个数的长度,超过无事,不够需要补空格 .2表示小数长度
//result above:The num is 2.35
println(raw"The num is ${num}%2.2f")//result:The num is 2.3456%2.2f 原始输出
//三引号输出字符串 Strip Margin 除去页边空白
println(
|Dear Mary
|Today is Christmas,
|I miss you so much,
|tell Molly I am good,
|Merry Christmas!
|select *
| from
| tb_student
|where
| name = ${name}
| age > ${age}
|""".stripMargin)
字串文本由双引号(")环绕的字符组成:
scala
&
gt; val hello = "hello" hello: java.lang.String = hello
引号内的字符语法与字符文本相同,如:
scala
&
gt; val escapes = "\\\"\'" escapes: java.lang.String = \"'
由于这种语法对于包含大量转义序列或跨越若干行的字...
②如果变量的类型可以通过变量值推断出来,那么可以省略变量类型:
object Variable {
def main(args : Array[String]) : Unit = {
//声明变量的语法:var
val a:String =
&
quot;Xiao Ming
&
quot;
val b:String = s
&
quot;
&
quot;
&
quot;Hello $a, Welcome.
&
quot;
&
quot;
&
quot;
println(b)
// 结果
Hello Xiao Ming, Welcome.
2、stripMargin方法
Idea等IDE在排版多行
字符串
时,为了给开发者带来观察上的方便,会在新增行开头自动空格并加一个“|”号,...
编写一个函数,其作用是将输入的
字符串
反转过来。输入
字符串
以字符数组 char[] 的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。
你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。
示例 1:
输入:["h","e","l","l","o"]
输出
:["o","l","l","e","h"]
示例...
运行hive脚本报错:java.lang.ClassNotFoundException: Class org.apache.hive.hcatalog.data.JsonSerDe not found