Scala学习笔记(基础语法)

本文详细介绍了Scala语言的基础概念,包括Scala与Java、JVM的关系,静态类型语言的特点,以及编程范式。通过首个Scala代码示例,讲解了伴生对象、方法定义、变量使用等关键语法,并对比了var与val的区别,深入探讨了数据类型、类型转换和控制结构等核心内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

Scala,java,jvm的关系图

在这里插入图片描述
静态类型语言:在执行之前,数据类型就得确定下来
范式:编程方式在这里插入图片描述

第一个scala代码

//说明
//1.object表示一个伴生对象,这里我们可以简单的理解就是一个对象
  2.HelloScala就是对象名字。他底层真正对应的类名是HelloScala$,
  对象是HelloScala$类型的一个静态对象MODULE$
  3.当我们编写一个object HelloScala底层会生成两个.class文件,分别是HelloScala.clas和HelloScala$.class 
  4.Scala在运行时,流程如下
  
  ①先从HelloScala.class的main开始执行
  public static void main(String[] paramArrayOfString){
  HelloScala$.MODULE$.main(paramArrayOfString);
  }
  
  ②然后调用HelloScala$.calss类的方法 HelloScala$.MODULE$.main
  
  ③即执行下面的代码
  public void main (Strig [] args){
  Predef..MODULE$.println("-----hello world ------");
  }
  
  程序解读:
  1.def表示是一个方法,这是一个关键字
  2.main表示方法的名字,表示程序入口
  3.args:Array[Strig]表示形参,scala的特点是将参数在前,类型在后
  4.Array[String]表示类型为数组
  5.:Unit = 表示该函数的返回值为空(void*/
object HelloScala{

	def main(args:Array[String]):Unit={
		println("-----hello world ------")
	}
}

在这里插入图片描述

查看源码

在这里插入图片描述
鼠标放在需要查看源码的地方,然后快捷键Ctrl + B

文档注释

在源码所在的文件夹内,使用scaladoc -d d:\mydoc Hello.scala 可以生成对应的文档说明

变量使用

在这里插入图片描述

var和val的区别

var的变量是可以改变的,val是不可变的。

var age = 10
age = 30

给属性定义为val,相当于底层加了final

数据类型

Scala与Java有着相同的数据类型,**在Scala中数据类型都是对象,**也就是说scala没有java中的原生类型
在这里插入图片描述在这里插入图片描述

数据类型

在这里插入图片描述

//因为1.当把一个计算结果赋值一个变量时,则编译器会进行类型的转换和判断(即会看范围和类型)
//    2.当把一个字面量赋值一个变量时,则编译器只会进行范围的判定
var c2: Char = 'a' + 1 //错误,'a' + 1 为整形
var c3: Char = 97 + 1 //错误
var c4: Char = 98       //正确

在这里插入图片描述

值类型转换

在这里插入图片描述

赋值运算符

在这里插入图片描述在这里插入图片描述

运算符的特殊说明

在这里插入图片描述

分支语句else-if注意事项

在这里插入图片描述

双重循环

在这里插入图片描述

循环返回值在这里插入图片描述

在这里插入图片描述

for循环控制步长

在这里插入图片描述

While 循环中断

实现break的效果

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值