我正在審查一些代碼,我碰到這個傳來:Java調用方法和使用三元運算符並在參數中分配?
public static doSomething(String myString, String myString2) {
//Stuff
}
public static doAnotherThing(String myString) {
return doSomething(myString = myString != null ? myString.toLowerCase(): myString, null)
}
這是如何工作的?正好我知道結果字符串.toLowerCase被分配到MyString的(是的,我知道不好的做法,因爲你不應該重新分配方法參數實際上它們應該是最終的),但我不太確定該方法如何總是接收它需要的2個參數。
我知道它是如何工作當myString爲空或至少我想我做,因爲三元有myString,空,但我不太確定爲什麼它會在那裏時,myString不爲空?
我剛剛意識到像tskuzzy這樣的括號表明這會更容易理解。 –