如何使列表包含整数和字符串?仅使用列表的挑战

问题描述 投票:0回答:2

我从 scala 开始,我需要包含一堆整数,以及

number
中除
List
之外的其他内容。

例如

List(4,null)
List(4,"STOPSTR")

  • 我如何声明一个

    List[Int or String]
    类型的变量(Kind 的)?

  • 此外,是否可以为列表声明一个变量,该变量可以 只包含特定的字符串。例如。

    List[Int or String=="STOPSTR"]
    并在编译时检查它。

出于挑战的原因,我只能使用列表来进行此练习,没有类,没有映射,甚至不能使用数组。

scala
2个回答
2
投票

您可以通过两种不同的方式进行:

  1. 第一个是使用
    Any
    作为
    List
    的类型参数。但这里的问题是,它不仅仅局限于
    Int
    String
    类型。您也可以将任何其他类型添加到列表中。

例如

List[Any](1, 2, "Three")
  1. 第二种是使用
    Either
    。两者都具有可以不同的
    Left
    Right
    类型。例如
List[Either[Int, String]](Left(1), Left(2), Right("Three"))

0
投票

在新版本的 Scala 上您可以执行以下操作:

val myList: List[Int | String] = List(1, 2, "Hello", "World")
© www.soinside.com 2019 - 2024. All rights reserved.