scala编程--1为什么选择scala

为什么选择scala

1.scala是兼容的

他被设计成无缝的与Java实施或操作。

scala程序会被编译成JVM的字节码。他们的执行期性能通常与Java程序一致。

scala程序可以调用Java的方法,访问Java的字段,实现Java的接口。

几乎所有的scala代码都极度依赖Java库,而经常无须程序员意识到这一点。

交互式操作的另一点是scala极度重用了Java类型。

scalaJava
Intint
Floatfloat
Booleanboolean
scala可以让你定义隐式转换:imolicit conversion 这常常用在类型失配,或者选用不存在的方法时

scala代码同样可以由Java代码调用

2.scala是简洁的

scala语法避免了一些束缚Java程序的固定写法,举个栗子,scala中分号是可选的,且通常不写。

举个代码栗子:看Java和scala是怎么样写类及构造函数的

Java:

class MyClass{
	private int index;
	private String name;
	public MyClass(int index,String name){
		this.index = index;
		this.name = name;
	}
}

scala:

class MyClass(index:Int,name:String)

根据这段代码,scala编译器将要制造两个私有字段的类,一个名为index的Int类型的和一个叫做name的String类型,还有一个用这些变量作为参数获得初始值得构造函数。

这个构造函数还将用 作为参数传入的值初始化这两个字段。


有助于scala简洁易懂的另一个因素的是他的类型推断。

最关键的还是因为已经存在在库里的,不需要我们写的代码。scala给了我们许多工具来定义强有力的库让你抓住并提炼出通用的行为。


scala是高层次的


过于复杂的代码是造成很多软件工程崩溃的原因。但是重要的软件往往有复杂的需求,这种复杂性不可避免, 不过,必须由不受控转为受控

scala可以通过让你提升你的设计和使用接口的抽象级别来帮助你管理复杂性,

栗如:

想要弄清楚一个String里面是否包含一个大写字符。

Java:

boolean nameHasUpperCase = false;
for (int i = 0; i < name.length();i++){
	if(Character.isUpperCase(name.charAt(i))){
		nameHasUpperCase = true'
		break;
	}
}

scala

val nameHdsUpperCase = name.exits(_.isUpperCase)

3.scala是静态类型的

可检验属性

静态类型系统可以保证消除某些运行时错误

安全的重构

静态类型系统提供了让你具有高度信心改动代码基础的安全网。

文档

静态类型是被编译器检查过正确性的程序文档。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值