`

Scala Automatic String Conversion

 
阅读更多

原创转载请注明出处:http://agilestyle.iteye.com/blog/2333708

 

创建一个case类时会自动创建toString方法,并且nice输出

创建一个非Case类时也会自动创建toString方法,但是ugly输出为对象在JVM中的内存的HashCode

要得到更有用的结果,就得override自己的toString方法

package org.fool.scala.strings

case class Teacher(name: String)

class Student(val age: Int)

class Student2(val age: Int) {
  override def toString: String = s"Student is $age years old"
}

object ToStringTest extends App {
  val teacher = Teacher("SB")
  // Teacher(SB)
  println(teacher)

  val student = new Student(18)
  // org.fool.scala.strings.Student@6bf256fa
  println(student)

  // Student is 30 years old
  val student2 = new Student2(30)
  println(student2)
}

Console Output


 

 

  • 大小: 12 KB
分享到:
评论

相关推荐

    Scala的String类方法整合

    ### Scala的String类方法整合 在Scala编程语言中,`String` 类是处理文本数据的基础。本文将对 `String` 类中的方法进行详细介绍,并提供它们的功能概述与应用场景,旨在帮助开发者更好地理解和应用这些方法。 ###...

    Scala - Implicit Conversion.docx

    在Scala编程语言中,隐式转换(Implicit Conversion)是一种强大的特性,它允许我们不显式地将一个类型的值转换为另一个类型。隐式转换在某些特定情况下非常有用,例如当两个不兼容的类型需要一起工作时,或者为了...

    scala sdk scala-2.12.3

    Scala SDK,全称为Scala Software Development Kit,是用于开发Scala应用程序的核心工具集。Scala是一种多范式的编程语言,融合了面向对象和函数式编程的特点,它运行在Java虚拟机(JVM)上,能够充分利用Java生态...

    scala3 scala3 scala3 scala3 scala3

    Scala3,也被称为Scala 3或Dotty,是Scala编程语言的一个重大更新,旨在提高其简洁性、可读性和类型安全性。Scala3的发布标志着该语言的进一步成熟,它引入了一系列改进,旨在解决早期版本中的一些痛点,同时保持对...

    DF_stringsplit.scala

    用来学习scala以及spark,用scala写的字符串验证以及字符串分割算子

    Scala语法简明教程

    def showIf(name: String): String = { if (name == null) "the name is null" else s"the name: $name" } ``` - **循环语句**: - `while`循环与Java类似,但在Scala中可以省略大括号。 - `do...while`循环...

    scala2.12.1Windows镜像包

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的概念。这个"scala2.12.1Windows镜像包"是为Windows操作系统设计的Scala编程环境的安装包,版本号为2.12.1。Scala 2.12.x系列是其重要的一个稳定...

    scala-2.12.10.zip

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的概念。这个"scala-2.12.10.zip"文件是Scala编程语言的特定版本——2.12.10,专为Windows操作系统设计的安装包。Scala 2.12.x系列是该语言的一个...

    scala + mybatis 数据库查询

    Scala是一种强大的多范式编程语言,它结合了面向对象和函数式编程的特性。MyBatis则是一款流行的Java持久层框架,主要用于简化数据库操作。在本项目中,"scala + mybatis 数据库查询",我们将探讨如何将Scala与...

    scala实战高清讲解

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性,使得它在处理并发和大数据分析方面表现出色。"Scala实战高清讲解"这本书是学习Scala的宝贵资源,尤其对于那些希望深入理解并提升Scala技能的...

    scala-2.11.7 包

    def main(args: Array[String]) { println("Hello, World!") } } ``` 这里,`object`关键字定义了一个单例对象,`main`方法是所有Java和Scala应用程序的入口点。`println`函数用于打印字符串到控制台。 Scala还...

    官网scala-2.11.8版本安装包

    def main(args: Array[String]) { val conf = new SparkConf().setAppName("Simple Application") val sc = new SparkContext(conf) val textFile = sc.textFile("hdfs://path/to/your/file.txt") val ...

    Scala的List类方法整合

    ### Scala的List类方法整合 在Scala编程语言中,`List` 类是处理有序集合的一种常见方式。本文将详细介绍 `List` 类中的多种方法及其用途,帮助开发者更好地理解和使用这些功能。 #### 1. `def + (elem: A): List...

    Scala考试题1

    Scala 是一种多范式的编程语言,它融合了面向对象和函数式编程的特性。下面将详细解释题目中涉及的Scala知识点: 1. **var、val 和 def 的区别**: - `var` 定义可变变量,可以多次赋值。 - `val` 定义不可变变量...

    最好的scala学习 课件

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性,被广泛应用于大数据处理领域,特别是与Apache Spark相结合时。本课件是针对Scala学习者精心准备的资源,旨在帮助你深入理解和掌握Scala的...

    scala-2.11.8.rar

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性。这个"scala-2.11.8.rar"压缩包包含了Scala语言的2.11.8版本的源代码,这对于理解Scala的工作原理、学习高级编程技巧以及进行自定义扩展或...

    scala学习源代码

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性。这个"scala学习源代码"的压缩包文件很可能包含了用于教学或自我学习Scala编程的基础示例。让我们深入了解一下Scala语言的关键概念和特性。 ...

    windows版scala-2.11.12.zip

    在这个"windows版scala-2.11.12.zip"压缩包中,包含的是Scala 2.11.12版本的Windows兼容安装文件,这是Scala的一个稳定版本,适用于开发人员在Windows操作系统上进行Scala编程。 Scala 2.11.x系列是Scala的一个主要...

    学习scala好的项目

    Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性,被广泛应用于大数据处理、分布式计算和Web开发等领域。Spark是基于Scala构建的大数据处理框架,其高性能和易用性使得Scala在大数据领域备受...

    A Brief Introduction to Scala

    例如,在Scala中,`String`类型对应Java中的`java.lang.String`;而在Java中,`int`类型对应Scala中的`Int`类型。 通过以上介绍可以看出,Scala不仅在理论上融合了函数式编程与面向对象编程的优点,而且在实践中也...

Global site tag (gtag.js) - Google Analytics