29、我们正在开发一个游戏网站,需要追踪像 Xbox Two 和 Playstation 5 这样的热门游戏机(为未来做规划)。要求创建一个游戏机类,该类能够追踪制造商、型号、发布日期、WiFi 类型、支持的物理媒体格式以及最大视频分辨率。重写默认的 toString 方法,以打印出该实例的合理大小描述(少于 120 个字符)。其中,发布日期(或上市日期)应该是 java.util.Date 的实例;保留 WiFi 类型(b/g、b/g/n 等)字段为可选字段,以防某些游戏机没有 WiFi;物理媒体格式应该是一个列表;最大视频分辨率应该采用一种格式,使得能够按照像素数量从大到小对游戏机进行排序。同时思考物理媒体格式使用 String 是最佳选择,还是使用与常量值匹配的 Int 呢?
以下是一个满足上述需求的 Scala 代码示例:
import java.util.Date
class Console(val make: String,
val model: String,
val debutDate: Date,
val wifiType: Option[String],
val physicalMediaFormats: List[String],
val maxVideoResolution: (Int, Int)) {
override def toString: String = {
s"Make: $make, Model: $model, Debut Date: $debutDate, WiFi: ${wifiType.getOrElse("None")}, Media Formats: ${physicalMediaFormats.mkString(", ")}, Resolution: ${maxVideoResolution._1}x${maxVideoResolution._2}"
}
}
在这个代码中:
-
Console类包含了制造商、型号、发布日期、WiFi 类型、物理媒体格式和最大视频分辨率这些属性。 -
debutDate是java.util.Date类型。 -
wifiType是Option[String]类型,允许某些游戏机没有 WiFi。 -
physicalMediaFormats是List[String]类型。 -
maxVideoResolution是一个包含两个整数的元组,表示分辨率的宽度和高度,方便按像素数量排序。 - 重写的
toString方法返回一个长度小于 120 字符的描述。
30、我们正在开发一个游戏网站,需要跟踪像 Xbox Two 和 Playstation 5 这样的流行游戏机。创建一个游戏类,该类包含游戏名称、制造商、一个它所支持的游戏机列表,以及一个 “isSupported” 方法,如果给定的游戏机被支持,该方法返回 true。
以下是一个用 Scala 实现的示例代码:
class Console(val make: String, val model: String)
class Game(val name: String, val maker: String, val supportedConsoles: List[Console]) {
def isSupported(console: Console): Boolean = {
supportedConsoles.contains(console)
}
}
在上述代码中,首先定义了 Console 类,用于表示游戏机。然后定义了 Game 类,它包含游戏名称 name 、制造商 maker 和一个支持的游戏机列表 supportedConsoles 。 isSupported 方法用于检查给定的游戏机是否在支持列表中,如果是则返回 true ,否则返回 false 。

最低0.47元/天 解锁文章
305

被折叠的 条评论
为什么被折叠?



