我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

Scala有什么用

小编给大家分享一下Scala有什么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

创新互联公司基于成都重庆香港及美国等地区分布式IDC机房数据中心构建的电信大带宽,联通大带宽,移动大带宽,多线BGP大带宽租用,是为众多客户提供专业四川雅安服务器托管报价,主机托管价格性价比高,为金融证券行业服务器托管,ai人工智能服务器托管提供bgp线路100M独享,G口带宽及机柜租用的专业成都idc公司。

一、基础

1、在Scala声明值和变量的时候,用val声明的值是不能改变你赋予它的内容的,而var可以。如下:

scala>val answer = 8
answer: Int = 8

以val定义的值实际上是一个常量——无法改变其内容。

如果我们想要声明其值可以改变的变量,我们可以用var:

var counter = 0
counter = 1 //OK,我们可以改变一个var

2、在指定变量类型的时候,Scala和Java有一些差别:

Java:

String greeting;

Scala:

val greeting: String = null;

3、Scala7种数值类型:Byte、Char、Short、Int、Long、Float、Double、Boolean。

4、在Scala中,我们用方法,而不是强制类型转换,来做数值类型之间的转换。例如:99.44.toInt得到99,99.toChar得到'c'。和Java一样,toString将任意的对象转换成字符串。

要将包含了数字的字符串转换成数值,使用toInt或者toDouble。例如,“99.44”.toDouble得到99.44。

5、Scala的算术和操作符重载时需要注意的是:Scala中的操作符实际上是方法。

比如说:

a + b

是如下方法调用的简写:

a.+(b)

此处的+是方法名。Scala中可以使用几乎任何符号来为方法命名,通常来说,你可以用:

a 方法 b

作为一下代码的简写:

a.方法(b)

这里的方法是一个带有两个参数的方法(一个隐式的和一个显式的)。例如:

1.to(10)可以写成: 1 to 10

6、Scala还有一个显著的不同,Scala并没有提供++和--操作符,我们需要使用+=1或者-=1

7、在Scala中的通配符是 _ 而不像是java的 * 。例如在引入时,import scala.math._

8、Scala的apply方法是一个很常用的方法。举例来说,如果s是一个字符串,那么s(i)就是该字符串的第i个字符。而字C++中,我们会写成s[i],在java中,我们会写成s.charAt(i)。在Scala中,我们却可以直接这样:"Hello"(4)//这样将会产出'o'。可以将这种方法看做是()操作符的重载形式,它背后实现原理是一个名为apply的方法。例如,在StringOps类的文档中,有以下方法:

def apply(n: Int):Char

其实也就是说,"Hello"(4)是如下语句的简写:

"Hello".apply(4)

9、Java程序员们使用Javadoc来浏览Java API,Scala也有自己的版本,叫做Scaladoc。

二、控制结构和函数

1、Scala的if/else语法结构和Java或C++一样。但是,值得注意的是在Scala中if/else表达式是有值的,这个值就是跟在if或else之后的表达式的值。如:

if (x > 0) 1 else -1

上述表达式的值是1或者-1,具体取决于x的值。甚至可以将if/else表达式的值赋值给变量:

val s = if (x > 0) 1 else -1

这和下面的语句效果是一样的:

if (x > 0) s = 1 else s = -1

但是,第一种写法更好,因为它用来初始化一个val,而在第二种写法中,s必须是var。

看完了这篇文章,相信你对“Scala有什么用”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


分享标题:Scala有什么用
文章分享:http://mswzjz.cn/article/jcpeoo.html

其他资讯