私はあなたの実際のコードは次のようになりますと仮定します。そうでない場合
if (preconditionflag.equals("skip")){
System.out.println("Skipping this testcase due to earlier testcase failed");
flag = "skip";
} else {
flag = "pass";
}
あなたがメソッドから返さ一部のメソッドから戻っていないことができないので、あなたの質問への答えは、ノーすでにあります三項演算の他の部分では、
ここでの三項演算に対して反対の障害は、STDOUTの出力です。三項演算子はそれを許可していませんが、あなたが本当にあなたに必要がある場合は、ヘルパーメソッドを作成することによって、それを解決することができます。
private void myMethod() {
...
flag = preconditionflag.equals("skip") ?
showMessageAndReturn("Skipping this testcase due to earlier testcase failed", "skip") :
"pass";
...
}
private String showMessageAndReturn(String message, String retVal) {
System.out.println(message);
return retVal;
}
これはまさにあなたの質問に次のような答えですが、私はそれのために実際の使用を参照するには困難を持っています実生活では。
※可能かどうかはわかりません。 –
this:*** precondflag == "スキップ" ***決してJavaではありません –
あなたの例の 'if'ケースには、メソッドが呼び出された場所へのコントロールフローを移動する' return'キーワードが含まれています。三項演算子はそれを行うことはできません。条件に基づいているだけで、あなたが指定した2つの値のいずれかが返されます。私はあなたがここで何をしようとしているのか分かりませんし、不明確な質問は下投票になる傾向があります。おかげさまで – Pshemo