Rumah >Java >javaTutorial >Bolehkah Pengendali Ternary Menggantikan Penyata If-Else Yang Tidak Mengembalikan Nilai?

Bolehkah Pengendali Ternary Menggantikan Penyata If-Else Yang Tidak Mengembalikan Nilai?

DDD
DDDasal
2024-11-06 19:14:02247semak imbas

Can a Ternary Operator Replace an If-Else Statement That Doesn't Return a Value?

Operator Ternary: Menggantikan if-else dengan Ungkapan Bersyarat

Dalam pengaturcaraan, operator ternary menyediakan cara ringkas untuk menyatakan pernyataan bersyarat dalam satu baris. Pertimbangkan kod berikut:

if (string != null) {
    callFunction(parameters);
} else {
    // Intentionally left blank
}

Bolehkah kami menukar ini kepada operator ternary?

Menggunakan Operator Ternary di Java

Operator ternary dalam Java mengikut sintaks:

return_value = (true-false condition) ? (if true expression) : (if false expression);

Memohon pada Memandangkan Kod

Berdasarkan andaian bahawa callFunction(...) tidak mengembalikan nilai, kami tidak boleh menggunakan operator ternary untuk blok kod tertentu ini. Pengendali ternary biasanya digunakan untuk tugasan alternatif, yang tidak berlaku di sini.

Pernyataan if-else alternatif

Bergantung pada tingkah laku yang dimaksudkan, berikut ialah cara alternatif untuk faktorkan semula kod:

Jika callFunction(...) Mengembalikan a Nilai:

return_value = (string != null) ? callFunction(...) : null;

Jika callFunction(...) Tidak Mengembalikan Nilai:

if (string != null) {
    callFunction(...);
}

Atau, sebagai satu pelapik:

if (string != null) callFunction(...);

Amalan Terbaik untuk Ternary Operator

Ingat, pengendali ternary harus digunakan terutamanya untuk tugasan alternatif. Elakkan daripada menggunakannya secara tidak perlu, kerana ia boleh mengurangkan kebolehbacaan kod.

Nota Tambahan

Jika klausa palsu sengaja dibiarkan kosong, pertimbangkan untuk menggunakan versi satu lapis yang lebih ringkas .

Atas ialah kandungan terperinci Bolehkah Pengendali Ternary Menggantikan Penyata If-Else Yang Tidak Mengembalikan Nilai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn