Простой ответ: нет, в Java нет прямого эквивалента необязательных параметров VB.NET. В Java практикой является «перегрузка» методов. Это означает, что вы пишете несколько разных заголовков методов со сходной логикой, но с разными определенными параметрами передачи. Виртуальная машина Java выберет соответствующий метод в зависимости от того, какие параметры передаются при вызове.
Что касается операторов переключения, то нет в операторах переключения Java работают только с целыми числами, но есть несколько сторонних библиотек, которые предоставляют расширенные функциональные возможности переключения. Дефо стоит гугл!
Проверьте также: Необязательные параметры Java
и: Почему я не могу включить строку? .
Они дают хорошее объяснение.