当前位置: 首页 > news >正文

Scala学习笔记(1)-环境搭建

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

Scala是一种多范式的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。scala可以和java程序无缝拼接,因为scala文件编译后也是成为.class文件,并且在JVM上运行,有下下一代Java之称,当然要有Java今天的阵势还有很长很长的一段路要走。

Scala的几个主要特性

1.面向风格:Scala中的每个值都是一个对象,包括基本数据类型(java中基本类型不是对象)在内,连函数也是对象。
2.函数式风格:高阶函数(Higher-Order Function)、局部套用(Currying)、嵌套函数(Nested Function)、序列解读(Sequence Comprehensions)等等。
3.Scala是静态类型的,这就允许它提供泛型类、内部类、甚至多态方法(Polymorphic Method)
4.Scala可以与Java互操作:它用scalac这个编译器把源文件编译成Java的class文件(即在JVM上运行的字节码)。你可以从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的代码。它也可以访问现存的数之不尽的Java类库,这让(潜在地)迁移到Scala更加容易。

1.安装Scala,这个不用多说

Scala目前最新的版本为2.10.2,下载地址http://www.scala-lang.org/,我下载的.msi文件,直接安装完毕自动添加了path

2.安装IDE
(1)直接下载ScalaIDE,此IDE基于eclipse3.7(Indigo),安装完后就可以直接使用。
(2)已安装有Eclipse的,可以安装scala支持插件
插件地址 http://download.scala-ide.org/releases-29/stable/site
设置编辑器字体:Preferences->Colors and Fonts->Text Font

3.写一段代码测试一下

package com.demo
object Demo {//注意这里是object 不是 class 喔,两者区别后面会讲到。
  def main(args: Array[String]): Unit = { 
    println("hello scala!") 
    println("hello world!");//分号可选要不要 
  }

}


转载于:https://my.oschina.net/u/1034176/blog/492272

相关文章:

  • Android平台调用Web Service:螺纹的引入
  • sed去掉文件中的空行
  • 前端手札--meta标记篇
  • 小技巧:Windows Server 2012R2 WiFi 无法连接问题
  • 在项目中引入领域驱动设计的经验
  • 【零基础学习iOS开发】【02-C语言】11-函数的声明和定义
  • 树莓派 安装 php
  • 互联网架构设想的大型应用软件,并建议
  • Android软硬整合技术(HALFramework)
  • httpry 升级版本 secihttp 发布了
  • 认为最重要的是:不要说自己正在「创业」(转)
  • 第一章 词汇陷阱
  • 在我的眼里,生产主管(1)——如何做竞争分析
  • Linux用户和组管理
  • Intellij idea 与 eclipse 常用快捷键对比(Shortcuts to compare : Intellij idea VS Eclipse)
  • 2017年终总结、随想
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • bootstrap创建登录注册页面
  • JavaScript对象详解
  • JS字符串转数字方法总结
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • MD5加密原理解析及OC版原理实现
  • node 版本过低
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Redis 懒删除(lazy free)简史
  • TCP拥塞控制
  • unity如何实现一个固定宽度的orthagraphic相机
  • webpack4 一点通
  • win10下安装mysql5.7
  • 搞机器学习要哪些技能
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 小而合理的前端理论:rscss和rsjs
  • C# - 为值类型重定义相等性
  • 回归生活:清理微信公众号
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • #pragma data_seg 共享数据区(转)
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (C)一些题4
  • (C语言)字符分类函数
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (区间dp) (经典例题) 石子合并
  • (转)Linux下编译安装log4cxx
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .net Signalr 使用笔记
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)
  • /*在DataTable中更新、删除数据*/
  • @Responsebody与@RequestBody
  • [04] Android逐帧动画(一)
  • [ai笔记3] ai春晚观后感-谈谈ai与艺术
  • [bzoj 3124][sdoi 2013 省选] 直径
  • [BZOJ4016][FJOI2014]最短路径树问题
  • [Dxperience.8.*]报表预览控件PrintControl设置