首页 > 其他分享 >【Scala入门学习】基本数据类型和变量声明

【Scala入门学习】基本数据类型和变量声明

时间:2024-09-15 17:24:59浏览次数:10  
标签:入门 scala Scala 数据类型 运算符 按位 类型 Unit

1. 基本数据类型

scala 的基本类型有 9种:

Byte、Char、Short、Int、Long、Float、Double、Boolean、Unit

Scala中没有基本数据类型的概念,所有的类型都是对象。

AnyVal:代表所有基本类型。

AnyRef:代表所以引用类型,包括 Scala class 和 Java class。

Any:是所有类的超类。如果不知道表达式的结果是什么类型可以用Any。

Unit:只有一个实例值 (),方法返回Unit 相当于返回了Java中的void。

Null: 是所有引用类型的子类型,只有一个实例null。

2. 变量的声明

val:变量的引用不可变,底层相当于final 修饰

var:变量的引用可变

scala推荐用val,val就是value的缩写。

scala语言结尾不用分号和Python语言比较相似。

scala不指定变量类型是会根据值进行自动推断,当然也可以在初始化的时候明确指定变量的类型;

3. 操作符

Scala 为它的基本类型提供了丰富的操作符集,包括:

算数运算符:加(+)、减(-) 、乘(*) 、除(/) 、余数(%);

关系运算符:大于(>)、小于(\<)、等于(=)、不等于(!=)、大于等于(>=)、小于等于(\<=);

逻辑运算符:逻辑与(&&)、逻辑或(||)、逻辑非(!);

位运算符:按位与(&)、按位或(|)、按位异或(\^)、按位取反(\~)、左移(\<\<)、右移(>>)、无符号右移(>>>);

赋值运算符:“=” 及其与其他运算符结合的扩展赋值运算符,例如 +=、-=;

注意:

1)与java不同的是这些运算符的操作,都是方法的调用;

2)在 scala中各种赋值表达式的值都是Unit类型;

标签:入门,scala,Scala,数据类型,运算符,按位,类型,Unit
From: https://blog.csdn.net/2301_80912559/article/details/142286079

相关文章

  • C++入门补充语法
    1、C和C++的区别                首先C++是包含C语言的,C语言中的所有语法在C++中都可以应用,因为C语言语法限制过多导致许多东西实现起来不方便,所以C++又制订了一系列的语法来补充C语言的不足。2、命名空间2.1命名空间为什么要使用命名空间,下面我们使用一段......
  • Linux操作系统入门(二)
    完成了前篇所进行的VMware下载安装,并在其内配置了CentOS7的linux操作系统之后,我们得以正式进入了Linux的世界。一.安装FinalShell在本篇中,为了更好的在Windows系统上对虚拟机中的linux操作系统进行操作,我们需要下载一款新的应用程序————FinalShell(其官网如下所示)。ht......
  • Linux操作系统入门(三)
    _______________________________________________一.Linux操作系统的文件结构相比于Windows操作系统的C,D,E等盘符,Linux操作系统仅有一个"/"符号的根目录.这其中存在一个显著的不同,Linux操作系统使用的是斜杠"/",而Windows操作系统中使用的是反斜杠"\"文件路径示例:"/Mus......
  • Elasticsearch和向量数据库的快速入门
    在比较Elasticsearch和向量数据库之前,让我们简要解释它们是什么:什么是Elasticsearch?Elasticsearch是一个流行的开源搜索和分析引擎,建立在ApacheLucene之上。它专为全文搜索、分析和日志分析用例而设计。主要特点:文档导向的NoSQL数据库分布式和可扩展的架构实时搜索和分析无需......
  • GitLab CI_CD 从入门到实战笔记
    第1章认识GitLabCI/CD1.3GitLabCI/CD的几个基本概念GitLabCI/CD由以下两部分构成。(1)运行流水线的环境。它是由GitLabRunner提供的,这是一个由GitLab开发的开源软件包,要搭建GitLabCI/CD就必须安装它,因为它是流水线的运行环境。(2)定义流水线内容的.gitlab-ci.yml文......
  • 数据类型与底层原理
    数据类型与底层原理数据结构哈希表redis使用链式哈希来解决哈希冲突,其Hash表实质上是一个二维数组,其中每一项就是一个指向哈希项(dictEntry)的指针typedefstructdictht{dictEntry**table;//二维数组unsignedlongsize;//Hash表大小unsignedlongsizemask......
  • 【LGR-200-Div.4】洛谷入门赛 #27 A-H题解
    A#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;mt19937rnd(time(0));#defineintlonglongtypedeftuple<int,int,int>tp;#definexfirst#defineysecondtypedefpair<int,int>pii;typedefpair<double,double>......
  • [第一章 web入门]SQL注入-1
    启动靶机很明显注入点为id值,单引号闭合影响语句,说明为单引号闭合构造注入语句?id=1'and1=1--+发现没报错,说明没有其他过滤,开始sql注入?id=1'orderby4--+直到=4报错说明有3个字节段测试回显位2,3?id=1'and1=2unionselect1,2,3--+测试当前数......
  • Python基础入门1
    1.注释和标识符print("helloworld")#单行注释以#开头'''多行注释三个引号开头,三个引号结尾,可以是单引号或者双引号''''''标识符:主要指作为:变量、函数、类模块以及其他对象的名称。1.有数字,下划线,字母组成,但是数字不能开头2.区分大小写3.不能使用关键字(报错了直......
  • PAM后门从入门到应急响应
    目录1.PAM与PAM后门介绍PAM介绍PAM后门2.植入PAM后门2.1关闭selinux和临时关闭setenforce 2.2查看pam版本号2.3下载对应版本的pam源码包2.4安装gcc编译器和flex库2.5留PAM后门和保存ssh登录的账户密码2.6编译2.9登录测试3.应急响应发现3.1查......