如何给 .attr("href") 添加前缀?
How to add prefix to .attr("href")?
我需要向我的 link 添加前缀字符串,由属性 "href" 返回。
.getElementsByClass(CLASS_OFFER_NAME)
.firstOrNull()
?.attr("href") // Here need I add prefix to attr href
.orEmpty()
我现在 url 例如:work/london/22 但我需要添加域前缀所以我想得到 www.offerlist.com/work/london/22
也许您可以将 String?
转换为 Optional<T>
并通过 Optional.map
方法应用前缀连接,最后使用 orElse("")
...[=17 提取结果值=]
这是解决问题的函数式方法,但您显然可以通过 if
或 ternary 或 elvis operator[=27= 来解决它] 应用于 orEmpty
.
返回的值
如果你喜欢函数式的方法,你可以试试这个例子,它同时显示了 Optional 和 T? --> 可选用例:
fun <T> toOptional(value : T?) : Optional<T> {
if(value == null) {
return Optional.empty()
}
return Optional.of(value)
}
val opt:Optional<String> = Optional.empty()
println(opt.map { x -> "PREFIX/$x" }.orElse(""))
val opt2:Optional<String> = Optional.of("link")
println(opt2.map { x -> "PREFIX/$x" }.orElse(""))
var str : String? = null
println(toOptional(str).map { x -> "PREFIX/$x" }.orElse(""))
var str2 = "hrefValue"
println(toOptional(str2).map { x -> "PREFIX/$x" }.orElse(""))
希望对您有所帮助!
我需要向我的 link 添加前缀字符串,由属性 "href" 返回。
.getElementsByClass(CLASS_OFFER_NAME)
.firstOrNull()
?.attr("href") // Here need I add prefix to attr href
.orEmpty()
我现在 url 例如:work/london/22 但我需要添加域前缀所以我想得到 www.offerlist.com/work/london/22
也许您可以将 String?
转换为 Optional<T>
并通过 Optional.map
方法应用前缀连接,最后使用 orElse("")
...[=17 提取结果值=]
这是解决问题的函数式方法,但您显然可以通过 if
或 ternary 或 elvis operator[=27= 来解决它] 应用于 orEmpty
.
如果你喜欢函数式的方法,你可以试试这个例子,它同时显示了 Optional 和 T? --> 可选用例:
fun <T> toOptional(value : T?) : Optional<T> {
if(value == null) {
return Optional.empty()
}
return Optional.of(value)
}
val opt:Optional<String> = Optional.empty()
println(opt.map { x -> "PREFIX/$x" }.orElse(""))
val opt2:Optional<String> = Optional.of("link")
println(opt2.map { x -> "PREFIX/$x" }.orElse(""))
var str : String? = null
println(toOptional(str).map { x -> "PREFIX/$x" }.orElse(""))
var str2 = "hrefValue"
println(toOptional(str2).map { x -> "PREFIX/$x" }.orElse(""))
希望对您有所帮助!