【问题标题】:What is .toString doing in this parameter- vehicle.toString+"firstImage".toString 在这个参数中做了什么——vehicle.toString+"firstImage"
【发布时间】:2020-06-23 13:44:05
【问题描述】:

刚开始使用 scala 和 gatling。我正在尝试理解另一个团队成员编写的代码。 代码是:

UploadFile.uploadFile(vehicle.toString+"firstImage", sessionHeaders, ImagePath,vehicle.toString);

uploadFile 是 UploadFile.scala 中的一个方法 uploadFile 方法定义为:

def uploadFile(name:String, headers:Map[String,String], path:String, param:String)

所以vehicle.toString+"firstImage" 是名称并且是一个字符串。但我不明白vehicle.toString 是什么 - 这里正在做什么?然后将其连接到“firstImage”。那么为什么不直接写:` "vehicle" + "firstImage"...?

【问题讨论】:

  • 我不是 scala 专家,但通常 toString 返回对象的人类可读表示。
  • 换句话说,vehicle 可能不是字符串。如果是,toString 调用是多余的。
  • @RobertHarvey 这不一定是真的,它只是返回一个对象的 String 表示,如果它是人类可读的,是否应该实现 - RenukaA 我想车辆是除了字符串之外的任何东西,所以为了将它连接到另一个字符串,您首先必须将它变成一个 (scala 具有强大的静态类型系统,而不是像 JS 和 Python 那样的弱或动态类型系统) - 顺便说一句,通常最好使用 字符串插值s"${vehicle}firstImage"
  • 就像我说的,我不是 scala 专家。如果这涉及磁晶体学或核物理,我个人并不知道。结果呢?如果vehicle 是非字符串类型的对象,则 toString 是有目的的;如果它已经是一个字符串,它可能不是。在它上面运行一个调试器,看看它说了什么。

标签: scala tostring scala-gatling


【解决方案1】:

vehicle 可能不是String,因此必须先转换为String,然后才能与"firstImage" 连接。

如果已经是String,那么.toString是多余的

【讨论】:

    猜你喜欢
    • 2012-06-11
    • 2020-11-04
    • 2018-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-24
    • 2021-11-19
    • 2011-04-15
    相关资源
    最近更新 更多