Запитайте у chatgp, чи обов’язково для switch використовувати LOOKUPSWITCH та TABLESWITCH, і чи у компілятора є можливість сгенерувати якийсь інший код.
Запитайте у chatgpt про інструкції байткоду LOOKUPSWITCH та TABLESWITCH У класичній Java (до Java 7) інструкція switch в байткоді (TABLESWITCH або LOOKUPSWITCH) працювала тільки з типами, які можна привести до int.
Iснує пряма торгівля між затримкою і пропускною здатністю.
..можна обмежити кількість об’єктів, що збираються за одну молодіжну GC-паузу.
Це зменшує тривалість молодих пауз, хоча й збільшує їхню частоту
чому саме ці типи підтримуються, а інші — ні?
Java спроектована не дуже розумнима людьми, для максимальних невдобств та страждань. Це єдина причина. Спитайте ще, чому не можна наисати
switch(a) {
case null:
...
Висновок
Конструкція switch-case в Java пройшла великий шлях від суворих обмежень ранніх версій до надзвичайно гнучкого інструменту в останніх релізах.
Коментарі