#java #learning #challenge #відповідь
А правильна відповідь - X88 🙀
Чому? Бо в Java тернарний оператор визначає тип результату на основі типів своїх другого та третього операндів. Якщо типи цих операндів різні, то відбувається автоматичне приведення типів до найбільш загального типу, який може вмістити обидва значення. Наприклад, якщо char x та byte i, то приведеться результат до int: int r = false ? i: x; Тому що char - unsigned 16 біт (від 0 до 65,535), а byte - signed 8 біт (від -128 до 127). Ну а якщо boolean x та int i, то приведеться до Object.
Чи такі нюанси мають відношення до практичного значення. Мають 🙂 Просто, можливо, вам вони не зустрічались, та ви не робили або не бачили багів з цим. І це нормально, адже дійсно, як на мене, цей кейс не дуже поширений. Але, це нюанси мови Java. Знати їх чи ні - кожний вирішує сам для себе. Їх знання підвищує вашу "експертність" 😎 Їх незнання підвищує шанси написати код, який компілюється без помилок та ворнінгів, але при цьому може спрацювати невірно 🤷♂️ Тому висновок тут можна записати такий - слідкуйте, щоб типи операндів тернарного оператора були однакові, або легко та зрозуміло приводились до очікуваного типу.
#learnJava
👍 Ставте лайк і підпишіться, щоб отримати більше головоломок Java та пригод програмування. Щасливого кодування!
🪙☕ Купіть мені каву - допоможіть зібрати кошти для ЗСУ: https://www.buymeacoffee.com/ytkach
💬 Мій телеграм канал: https://t.me/tkach_channel
Слава Україні! 🇺🇦
In questa pagina del sito puoi guardare il video online Тернарний оператор della durata di ore minuti seconda in buona qualità , che l'utente ha caricato Java Online Lessons 30 marzo 2024, condividi il link con amici e conoscenti, su youtube questo video è già stato visto 1,427 volte e gli è piaciuto 43 spettatori. Buona visione!