• Scala:下载及idea上第一个程序以及解析


      1.可去官网下载:https://www.scala-lang.org/

     

      2.Scala简介

        Scala是Scalable Language两个单词的缩写,表示可伸缩语言的意思。从计算机的角度来讲,scala是一门完整的软件编程语言,连在一起就是scala是一门可伸缩的软件编程语言。之所以是可伸缩是因为这门语言体现了面向对象,函数式编程等多种不同的语言形式,且融合了不同语言的新特征。

        Scala语言是有连阿炳工学院洛桑的Martin Odersky与2001年基于Funnel的工作开始设计并开啊的。由于Martin Odersky之前的工作是开发java 和javac,所以局域java平台的scala于2003年底、2004年初发布。

      2.1.学习scala的必要性:

        大数据主要的批处理引擎框架spark是基于scala语言开发的

        大数据主要的流式计算引擎框架flink是基于scala语言开发的

      2.2.java和scala的关系:

        Martin Odersky是狂热的编译器爱好者,长时间的编程后,希望开发一种语言,能够让写程序的过程变得简单,高效,所以当接触到java语言后,感受到了这门语言的魅力,决定将函数式编程语言的特性融合到java中,由此产生了pizza和scala。

        JDK1.5的泛型,增强for循环,自动类型转换等都是从pizza语言引入的特性。

        JDK1.8的类型判断,λ表达式都是从scala语言引入的新特性。

      scala语言是基于java开发的,所以其编译后的文件也是字节码文件,并且可以运行在jvm中。

      3.scala的下载:点击download去选择合适的版本去下载,然后解压

       4.配置好环境变量:

      5.测试打开cmd,输入scala,在显示版本号之后输入var a=1;回车出现如下则为成功

      6.打开idea安装scala插件:file->settings->plugins 搜索scala,然后下载,下载成功后重启idea

      7.在模块右键店家 add frameworks support

     选择scala,然后点击create 查找自己安装的scala

    之后便可以新建scala class了

    创建scala 类

    之后出现如下图所示的界面

    敲main然后输出hello scala并运行

    至此,第一个scala程序运行成功。

    下面具体讲一下代码:

      

    object :scala中特殊的关键字,可以声明特殊类

    main:Java中的一个运行类,

    def: defined的缩写,用来声明方法

    args :Array[String] args表示参数名称,Array代表参数的类型。 [Stirng]中的[]表示泛型,是一个元素为Stirng类型的数组

    Scala语言来自于java语言,但是java存在一些不是面向对象的语法
    例如:基本数据类型,静态,void的返回值等等

    Scala作者希望基于java创建一门完全面向对象的语言,java中很多语法在scala中不存在

    java(强类型语言)中声明参数 Stirng name="xx";
    Scala中声明参数 name: String


    Unit:在java方法中如果没有返回值,则为void但是这个不是面向对象的语法,所以在scala中没有,用Unit代表没有返回值

    声明方法 main(): Unit={
    }

    =:将方法的逻辑值赋值给方法

    {}:函数体

    值得注意的是,scala中,如果是一行一条语句可以省略分号,如果是一行多条则要加上分号

    其实scala的语法有点类似于uml中的类的属性和方法的声明

  • 相关阅读:
    大数据平台Hadoop集群搭建
    分布式文件系统之FastDFS安装部署
    Nginx反代MogileFS集群
    分布式文件系统之MogileFS的安装使用
    高可用服务之Keepalived利用脚本实现服务的可用性检测
    高可用服务之Keepalived高可用LVS集群
    高可用服务之Keepalived邮件通知配置
    高可用服务之Keepalived基础入门
    高可用集群corosync+pacemaker之pcs安装使用
    高可用集群corosync+pacemaker之crmsh使用(二)
  • 原文地址:https://www.cnblogs.com/tkg1314/p/13989611.html
Copyright © 2020-2023  润新知