尝试转换
public WebDriver getDriver(URL remoteUrl) {
return null == remoteUrl
? new ChromeDriver(getCapabilities())
: new RemoteWebDriver(remoteUrl, getCapabilities());
}
使用Optional
public WebDriver getDriver(URL remoteUrl) {
return Optional.ofNullable(remoteUrl).ifPresentOrElse(
u -> new RemoteWebDriver(u, getCapabilities()),
() -> new ChromeDriver(getCapabilities()));
}
但是得到
无法返回无效结果
虽然?:
版本有效。
使用.map()
。仅当存在remoteUrl
时才调用。否则请使用ChromeDriver
orElse
public WebDriver getDriver(URL remoteUrl) {
return Optional.ofNullable(remoteUrl)
.map(u -> new RemoteWebDriver(u, getCapabilities()))
.orElse(new ChromeDriver(getCapabilities()));
}