#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
Слава Україні! 🇺🇦
Auf dieser Seite können Sie das Online-Video Тернарний оператор mit der Dauer stunde minuten sekunde in guter Qualität ansehen, das der Benutzer Java Online Lessons 30 März 2024 hochgeladen hat, den Link mit Freunden und Bekannten teilen, dieses Video wurde auf Youtube bereits 1,427 Mal angesehen und es wurde von 43 den Zuschauern gefallen. Viel Spaß beim Betrachtenden Zuschauern gefallen!