Scala之一变量和数据类型

Scala语法之变量和数据类型 Scala Scala变量 变量声明基本语法 var | val 变量名 [:变量类型]=变量值 注意事项: 1)声明变量时,类型可以省略(编译器自动推导,即类型推导) 2)类型确定后,就不能修改,说明Scala是强数据类型语言 3)在声明/定义一个变量时,可以使用var或者val来修饰,var修饰的变量可改变,val修饰的变量不可改。 4)Scala设计者推荐使用val,没有线程安全问题。 var a:Int = 1 //定义一个整型变量,取名a,并赋初值1 var name:String = "jack 阅读详情

1、字符串输出

(1)字符串,通过+号连接

(2)printf用法:字符串,通过%传值。

(3)字符串模板(插值字符串):通过$获取变量值

package com.atguigu.chapter02

object TestCharType {

    def main(args: Array[String]): Unit = {

        var name: String = "jinlian"
        var age: Int = 18

        //(1)字符串,通过+号连接
        println(name + " " + age)

        //(2)printf用法字符串,通过%传值。
        printf("name=%s age=%d\n", name, age)

        //(3)字符串,通过$引用
	//多行字符串,在Scala中,利用三个双引号包围多行字符串就可以实现。//输入的内容,带有空格、\t之类,导致每一行的开始位置不能整洁对齐。
//应用scala的stripMargin方法,在scala中stripMargin默认是“|”作为连接符,//在多行换行的行头前面加一个“|”符号即可。
        val s =
            """
              |select
              |    name,
              |    age
              |from user
              |where name="zhangsan"
            """.stripMargin
println(s)

//如果需要对变量进行运算,那么可以加${}
        val s1 =
            s"""
              |select
              |    name,
              |    age
              |from user
              |where name="$name" and age=${age+2}
            """.stripMargin
        println(s1)

		  val s2 = s"name=$name"
        println(s2)
    }
}

2、键盘输入

在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取。

1)基本语法

StdIn.readLine()、StdIn.readShort()、StdIn.readDouble()

2)案例实操

需求:可以从控制台接收用户信息,【姓名,年龄,薪水】。

import scala.io.StdIn

object TestInput {

    def main(args: Array[String]): Unit = {

        // 1 输入姓名
        println("input name:")
        var name = StdIn.readLine()

        // 2 输入年龄
        println("input age:")
        var age = StdIn.readShort()

        // 3 输入薪水
        println("input sal:")
        var sal = StdIn.readDouble()

        // 4 打印
        println("name=" + name)
        println("age=" + age)
        println("sal=" + sal)
    }
}

3、类型转换

强制类型转换

自动类型转换的逆过程,将精度大的数值类型转换为精度小的数值类型。使用时要加上强制转函数,但可能造成精度降低或溢出,格外要注意

Java  :  int num = (int)2.5
Scala :  var num : Int = 2.7.toInt

(1)将数据由高精度转换为低精度,就需要使用到强制转换

(2)强转符号只针对于最近的操作数有效,往往会使用小括号提升优先级

object TestForceTransfer {

    def main(args: Array[String]): Unit = {

        //(1)将数据由高精度转换为低精度,就需要使用到强制转换
        var n1: Int = 2.5.toInt // 这个存在精度损失
        
        //(2)强转符号只针对于最近的操作数有效,往往会使用小括号提升优先级
        var r1: Int = 10 * 3.5.toInt + 6 * 1.5.toInt  // 10 *3 + 6*1 = 36
        var r2: Int = (10 * 3.5 + 6 * 1.5).toInt  // 44.0.toInt = 44

        println("r1=" + r1 + " r2=" + r2)
    }
}

数值类型和String类型间转换

1)基本类型转String类型(语法:将基本类型的值+"" 即可)

(2)String类型转基本数值类型(语法:s1.toInt、s1.toFloat、s1.toDouble、s1.toByte、s1.toLong、s1.toShort)

object TestStringTransfer {

    def main(args: Array[String]): Unit = {

        //(1)基本类型转String类型(语法:将基本类型的值+"" 即可)
        var str1 : String = true + ""
        var str2 : String = 4.5 + ""
        var str3 : String = 100 +""

        //(2)String类型转基本数值类型(语法:调用相关API)
        var s1 : String = "12"

        var n1 : Byte = s1.toByte
        var n2 : Short = s1.toShort
        var n3 : Int = s1.toInt
        var n4 : Long = s1.toLong
    }
}

自动控制原理之控制系统的数学模型(类比神经网络学习数学模型) 控制系统的数学模型背景建模方法常用的数学模型时域数学模型的建立建立微分方程的步骤复数域模型的建立传递函数的性质系统的典型环节及传递函数比例环节惯性环节积分环节微分环节理想微分环节一阶微分环节二阶微分环节振荡环节延时环节(时滞环节) 背景 数学模型就像是真实世界的写照,它就像一个虚拟的世界,我们可以通过建模的方式了解这个真实世界的运作规律。 这一点很像强化学习,强化学习需要一个供智能体探索、学习的环境,于是,我们通常会事先建立一个虚拟的仿真环境。举个例子,对于人类来说,可能需要经过不断地尝试,甚至是生命的代价 阅读详情

相关推荐

DASH 流媒体协议(Dynamic Adaptive Streaming over HTTP)概述——起源、MPD文件解析、相关项目

简单介绍DASH的起源与发展、MPD文件简要解析、相关项目,以及常见流媒体协议的比较

farewellyi的博客 6891

Scala字符串输出、键盘输入和文件操作

字符串输出 基本语法 (1)字符串,通过+号连接 (2)printf 用法:字符串,通过%传值。 (3)字符串模板(插值字符串):通过$获取变量值 案例实操 package chapter02 object Test04_String { def main(args: Array[String]): Unit = { //(1)字符串,通过+号连接 val name: String = "alice" val age: Int = 18 println(age + "岁

一入大数据深似海?别怕!“数据极客圈”就是你的救生圈,走对圈子跟对人,趣析数据、畅聊趋势,快进圈子! 1153

别再只会用555了!手把手教你用运放和RC电路搭一个50Hz正弦波信号源(附Multisim仿真文件)

本文详细介绍了如何使用运放LM358和RC电路搭建一个精准的50Hz正弦波信号源,涵盖文氏电桥核心原理、单电源供电解决方案、Multisim仿真及实物调试技巧。通过实战指南和优化建议,帮助电子爱好者快速掌握低频信号生成技术,适用于各种测试和校准场景。

weixin_34116482的博客 367

Linux系统将执行程序或者文件输出到指定文件中

Linux系统将执行程序或者文件输出到指定文件中 1、使用标准输出以及重定向 例如:echo “123” > /home/123.txt 1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null" 2 表示stderr标准错误 & 表示等同于的意思,2>&1,表示2的输出重定向等同于1 1>/dev/...

weixin_43308423的博客 3643

瑞萨MCU定时器API实战:从Smart Configurator配置到中断与输入捕获应用

在嵌入式系统开发中,定时器(Timer)是实现精准时序控制、PWM输出和信号测量的核心硬件外设。其工作原理基于计数器在稳定时钟源驱动下递增或递减,达到预设值后触发中断或改变输出电平,从而为系统提供节拍和事件基准。通过图形化配置工具(如瑞萨的Smart Configurator),开发者可以高效地将复杂的硬件寄存器操作转化为清晰、标准化的C语言API函数,这极大地提升了开发效率并降低了出错风险。这种从硬件抽象到软件接口的技术价值在于,它使得开发者能更专注于应用逻辑,而非底层细节,尤其适用于工业控制、汽车电子等

weixin_42519733的博客 275

全志T113-S3 Linux系统移植实战:从硬件配置到内核启动全解析

本文详细解析了将Linux系统移植到全志T113-S3嵌入式芯片的完整实战流程。内容涵盖从开发环境搭建、Longan SDK源码获取,到关键的U-Boot配置、DDR初始化、Linux内核编译与设备树定制,以及根文件系统构建与启动脚本分析。文章结合硬件配置与启动日志解读,提供了从硬件配置到内核启动的全方位指导,帮助开发者高效完成系统移植。

ik67890123的博客 517

scala中s和${}

S和${}s${} s 字符串中的变量替换,Scala中基础的字符串插值就是在字符串前加字幕‘s’,然后在字符串中放入变量,每个变量都应以‘$’开头。字符串前加字母‘s’时,其实是在创建一个处理字符串字面量 示例 package demo object Demo12 { def main(args:Array[String])={ var name = "zhangsan" var age = 15 println(s"name=$name,age=$age") } }

a3125504x的博客 3340

【DMA】认识 DMA 及其工作流程(与传统CPU存取方式的区别)

【DMA】认识 DMA 及其工作流程(与传统CPU存取方式的区别)

challenglistic的博客 5万+

Scala 代码中“$“作用

Scala 代码中$ 符具有在String 中直接拼接 字符串 和数字 等类型 。简化了字符串拼接。 object Test1 { def main(args:Array[String]):Unit= { name="Tom" age =36 //System.currentTimeMillis()是一个方法需要{} println(s"${System.currentTimeMillis()} $name ’s age is$age") } } ...

紫蝶侠的博客 1745

ARM系统控制和管理接口System Control and Management Interface

本文档描述了一个可扩展的独立于操作系统的软件接口,用于执行各种系统控制和管理任务,包括电源和性能管理。 本文档描述了系统控制和管理接口(SCMI),它是一组操作系统无关的软件接口,用于系统管理。

AI-安全-功耗 1913

《Claude Code 实战》第 1 章:开启智能编程新纪元——初识 Claude Code

简单来说,Claude Code 是 Anthropic 公司推出的一款基于 Claude 3.7 Sonnet 等大语言模型的强大编程工具。但与传统的 ChatGPT 或普通的聊天机器人不同,Claude Code 具备了"动手"的能力。它不仅会"说",更会"做"。想象一下,你不再需要描述复杂的命令行参数,也不需要为了修改一个配置文件而频繁切换编辑器。Claude Code 可以直接读取你项目中的文件、理解复杂的代码库结构、执行终端命令,并直接为你生成或修改代码。

AI天才研究院 245

Scala 字符串插值的简单介绍

可通过实现。

全局可见 689

基于PointNet++网络的点云数据分类仿真分析

局部特征学习模块用于学习点云中每个点的局部特征表示,而全局特征学习模块用于学习整个点云的全局特征表示。点云数据分类是指将点云数据分为不同的类别或标签。PointNet++是一种用于点云数据处理的深度学习网络,它能够有效地学习点云数据的特征表示并实现高精度的分类。在本文中,我们将使用MATLAB实现基于PointNet++网络的点云数据分类仿真分析,并提供相应的源代码。然后,我们使用splitEachLabel函数将数据划分为训练集和测试集,其中80%的数据用于训练,20%的数据用于测试。

HackDashX的博客 210

【scala】scala变量定义和数据类型

一、变量定义 对比java说明 scala变量的定义分两个,一个是用val来定义,相当于java中是用final来定义变量,一旦定义,其中的值便不可修改;另外一个是用var来定义,相当于java中的非final变量,可修改。一般使用val定义,因为变量定义之后一般很少会去修改。如果你用val定义了一个对象,对象.属性还是可以修改的(前提是对象.属性是用var来定义的) java变量定义方式: St...

听风成歌。 2520

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Scala变量和常用数据类型

一、 声明值和变量 Scala声明变量有两种方式,一个用val,一个用var。 声明方式:val / var 变量名 : 变量类型 = 变量值 val定义的值是不可变的,它不是一个常量,是不可变量,或称之为只读变量。 val示例: scala> val a1 = 10 scala> a1 = 20(此处会报错,因为val不允许初始化后再次修改a1变量的引用)12 var示例: scala> var a2 = 10 scala> a2 = 2012 1、scala默认为匿名变量分

栗筝i的博客 3716

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

5、Scala变量和数据类型

文章目录Scala变量和数据类型注释基本语言法 Scala变量和数据类型 先在此声明,Scala的基本数据类型和Java一样 注释 Scala注释使用和Java完全一样 注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现。 基本语言法 单行注释:// 多行注释:/**/ 文档注释:/** * */ /** * 文档注释: * * 程序的入口方法 * @param args 外部传入的参数 * @author laingzai * @vers

hujieliang123的博客 1207

scala变量和数据类型

文章目录代码规范变量和常量 代码规范 scala注释使用和java完全一样 使用tab操作,实现操作 ctrl+alt+L进行格式化 运算符两边习惯性各加一个空格 一行最长不超过80个字符 变量和常量 常量:在程序执行过程中,其值不会被改变的变量 java: 变量类型 变量名称 = 初始值 int a = 1; final 变量类型 变量名称 = 初始值 final int b =1 scala: var 变量名[:变量类型] =初始值 var a:Int = 1 val 常量名[:

qzc_root的博客 458

Scala 变量和数据类型

Scala是完全面向对象的语言,所以不存在基本数据类型的概念,有的只是任意值对象类型(AnyVal)和任意引用对象类型(AnyRef)变量的类型如果能够通过变量值推断出来,那么可以省略类型声明,这里的省略,并不是不声明,而是由Scala编译器在编译时自动声明编译的。“开头的标识符为保留的 Scala 编译器产生的标志符使用,应用程序应该避免使用”$"开始的标识符,以免造成冲突。在 Scala 中,字符串的类型实际上就是 Java中的 String类,它本身是没有 String 类的。

Gavin31415926的博客 854

查看scala变量数据类型_Scala文字,变量和数据类型| Scala编程教程

查看scala变量数据类型 1)Scala数据类型 (1) Scala Data Types) Scala has the same set of data types as in Java. The traditional 14 data types are inherited as it is in Scala. Scala具有与Java中相同的数据类型集。 传统的14种数据类型在Scala...

cumt951045的博客 1916

Scala变量和数据类型

(3)Nothing,可以作为没有正常返回值的方法的返回类型,非常直观的告诉你这个方法不会正常返回,而且由于 Nothing 是其他任意类型的子类,他还能跟要求返回值的方法兼容。在将 String 类型转成基本数值类型时,要确保 String 类型能够转成有效的数据,比如我们可以把"123",转成一个整数,但是不能把"hello"转成一个整数。由于Java有基本类型,而且基本类型不是真正意义的对象,即使后面产生了基本类型的包装类,但是仍然存在基本数据类型,所以Java语言并不是真正意思的面向对象。

W_chuanqi的博客 1276

Scala基本数据类型和变量

Scala 的基本数据类型包括整型(Int)、长整型(Long)、短整型(Short)、字节(Byte)、浮点型(Float)、双精度浮点型(Double)、字符型(Char)和布尔型(Boolean),定义变量时需要指定变量的数据类型,并且变量可以是可变或不可变的。

m0_59360502的博客 1304

第2章 Scala变量和数据类型

Scala注释使用和Java完全一样。注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现。 2.1.2 多行注释 2.1.3 文档注释 2.2 变量 变量是一种使用方便的占位符,用于引用计算机内存地址,变量创建后会占用一定的内存空间。基于变量的数据类型,操作系统会进行内存分配并且决定什么将被储存在保留内存中。因此,通过给变量分配不同的数据类型,你可以在这些变量中存储整数,小数或者字母。变量的类型在变量名之后等号之前声明。 变量的类型如果能够通过变量值推断出来,那么

牛牛 278

Scala 基础 (二):变量和数据类型

是所有数据类型的子类,在一个函数没有明确返回值时使用,因为这样我们可以把抛出的返回值,返回给任何的变量或者函数。特别之处:scala用反引号包括的任意字符串,即使是Scala关键字(39个)也可以。由于Java有基本类型,而且基本类型不是真正意义的对象,Java不是纯粹的面向对象。引用类型常量,不能改变常量指向的对象,可以改变对象的字段。声明变量时,类型可以省略,编译器自动推导,即类型推导。,表示方法没有返回值,只有一个单例对象,输出为符串。为Scala中的一个数据类型,对应Java中的。

2501_90228871的博客 1171

Scala学习之变量和数据类型

注释 Scala注释使用和Java完全一样。 注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现。 基本语法 (1)单行注释:// (2)多行注释:/* */ (3)文档注释:/** * */ 代码规范 使用一次tab操作,实现缩进,默认整体向右边移动,用shift+tab整体向左移动 或者使用ctrl+alt+L来进行格式化 运算符两边习惯性各加一个空格。 一行最长不超过80个字符,超过的请使用换行战士,尽量保持格式美观。 变量和常量

M_Ene的学习日志 1385

Scala系列一:变量和数据类型

Scala系列一:变量和数据类型

zhengzaifeidelushang的博客 510
上一篇: mysqldump批量导出mysql建表语句
下一篇: Scala之二流程控制
AA赵师傅
博客等级 码龄9年 89粉丝 124原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值