值类型与 String 相互转换|学习笔记

简介: 快速学习值类型与 String 相互转换。

开发者学堂课程【Scala 核心编程-基础:值类型与 String 相互转换】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/609/detail/8900


值类型与 String 相互转换

 

目录

一、 介绍

二、 基本类型转 String 类型

三、 String 类型转基本数据类型

四、 注意事项

 

一、 介绍

在程序开发中,我们经常需要将基本数据类型转成 String 类型。或者将 String 类型转成基本数据类型。

//在运算和拼接以及显示的时候,往往都会把数据类型和字符串做一个转换工作

 

二、 基本类型转 String 类型

语法:将基本类型的值+“”即可

案例演示:

String str1=true+“”;

String str2=4.5+“”;String str3=100+“”;
新例子:

package com.atguigu.chapter02.dataconvert

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

val d1 = 1.2

//基本数据类型转 String

val s1= d1 + “”

image.png

//以后看到有下划线就表示编译器做了转换,波浪号表示此变量还没有使用,会进行提示,但不会报错

 

三、 String 类型转基本数据类型

语法:通过基本类型的 String 的 toXxx 方法即可

案例演示:

“12

s1.toInt

s1.toFloat

s1.toDouble

s1.toByte

s1.toLong

s1.toShort

//可以使用相应的方法将“12”转换为上述任意类型

新例子:

val s2=”12”

val num1=s2.toInt //将 num1转换为 Int 类型

val num2=s2.toByte  //将 num2转换为 Byte 类型

val num3=s2.toDouble  //将 num3转换为 Double 类型

val num4=s2.toLong  //将 num4转换为 Long 类型

}

 

四、 注意事项

1. 在将 String 类型转成基本数据类型时,要确保 String 类型能够转成有效数据,比如可以把“123”,转成一个整数,但是不能把“hello”转成一个整数。

例子:

val s3=“hello

println(s3.toInt)

运行结果如下:

image.png

D:\program\jdk8\bin\java…

Exception in thread “main” java.lang.NumberFormatException: For input string:”hello”

at java.lang.NumberFormatException.forInputstring(NumberFormatException.java:65)

at java.lang.Integer.parseInt(Integer.java:580)

at java.lang.Integer.parseInt(Integer.java:615)

at scala.collection.immutable.stringLike5class.toInt(StringLike.scala:272)

at scala.collection.immutable.StringOps.toInt(StringOps.scala:29)

at com.atguigu.chapter02.dataconvert.string2basic$.main(string2basic.scala:21)

出现报错,hello 抛出异常,也可以根据异常来做一个处理

2. 思考要把“12.5”转成 Int //

例子:

val s4=“12.5

println(s4.toInt) //转化为 int

//将12.5转化为 double,无法做 int 类型

//在 scala 中,不是将小数点后的数据进行截取,而是会抛出异常,此时就要保证 string 类型是可以进行转换的

运行结果如下:

image.png

D:\program\jdk8\bin\java…

Exception in thread “main” java.lang.NumberFormatException: For input string:”12.5”

at java.lang.NumberFormatException.forInputstring(NumberFormatException.java:65)

at java.lang.Integer.parseInt(Integer.java:580)

at java.lang.Integer.parseInt(Integer.java:615)

at scala.collection.immutable.stringLike5class.toInt(StringLike.scala:272)

at scala.collection.immutable.StringOps.toInt(StringOps.scala:29)

at com.atguigu.chapter02.dataconvert.string2basic$.main(string2basic.scala:25)

at com.atguigu.chapter02.dataconvert.string2basic$.main(string2basic.scala)

输入12.5无法转化为 int 类型

如果转化为 Double 类型,就是正确的:

println(s4.toDouble)  //正确

相关文章
|
4月前
|
存储 JSON NoSQL
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
这篇文章是关于Redis基本数据结构的学习笔记,包括了String、Hash、Set、List和SortedSet的介绍和常用命令。文章解释了每种数据结构的特点和使用场景,并通过命令示例演示了如何在Redis中操作这些数据结构。此外,还提供了一些练习示例,帮助读者更好地理解和应用这些数据结构。
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
|
5月前
|
存储 C++
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
56 0
|
8月前
|
Java Redis
redis-学习笔记(Jedis string 简单命令)
redis-学习笔记(Jedis string 简单命令)
52 2
|
7月前
|
编译器 C++
【C++】学习笔记——string_5
【C++】学习笔记——string_5
28 0
|
7月前
|
编译器 C语言 C++
【C++】学习笔记——string_4
【C++】学习笔记——string_4
31 0
|
7月前
|
C语言 C++
【C++】学习笔记——string_3
【C++】学习笔记——string_3
32 0
|
7月前
|
存储 编译器 C++
【C++】学习笔记——string_2
【C++】学习笔记——string_2
37 0
|
7月前
|
算法 C++ 容器
【C++】学习笔记——string_1
【C++】学习笔记——string_1
34 0
|
8月前
|
NoSQL Java Redis
redis-学习笔记(string , hash , list , set , zset 前置知识)
redis-学习笔记(string , hash , list , set , zset 前置知识)
42 0
redis-学习笔记(string , hash , list , set , zset 前置知识)
|
8月前
|
存储 NoSQL Java
redis-学习笔记(string)
redis-学习笔记(string)
40 0