我想通过简化为lambda来简化此代码。该界面只有一个功能。我不确定如何仅用lambda表达式替换代码的替代部分:
interface ITextWatcher {
fun onTextChanged(text: String) {
}
}
val textChangeHandler = object: ITextWatcher {
override fun onTextChanged(text: String)
var t = text
}
}
我正在寻找这样的东西:
val textChangeHandler = object: ITextWatcher {text ->
}
但是不会编译。
答案 0 :(得分:1)
语法为import requests
from bs4 import BeautifulSoup
link = 'https://www.abhe.org/directory/'
r = requests.get(link,headers={"user-Agent":"Mozilla/5.0"})
soup = BeautifulSoup(r.text,"lxml")
for item in soup.select("h2 > a[title]"):
print(item.text)
,但不适用于Kotlin中声明的接口,仅适用于Java接口(至少目前如此)。
直接使用val textChangeHandler = ITextWatcher {text -> ... }
。或声明一个将一个转换为另一个的函数:
(String) -> Unit
如果需要的话。