Quanto mais estudo outras linguagens mais vejo o quanto Java é limitada e verbosa
Vejam (Python):
first, *_, last = "blah" # ==> first= 'b', last = 'h'
e isto funciona com listas, mapas, conjuntos, tuplas
data = [(1,'um',3),(4,'quatro',12),(8,'oito',24),(8,'oito',32)]
for elem1, elem2, elem3 in data:
#...
{elem1**2 for elem1, *_ in data if elem1 % 2 == 0} #=> {16, 64}
#vejam o que é feito em uma só linha ai em cima
# pega o primeiro elemento de cada tupla no array e ignora os demais
# testa se o elemento é par
# se par, joga o quadrado deste elemento em um conjunto, desta forma automaticamente eliminando duplicatas
data = [[1,2],[3,4],[5,6]]
[i for inner in data for i in inner] #=> [1,2,3,4,5,6]
agora façam o mesmo em Java...
e olha que Python nem é assim tão capaz. Por exemplo, Ocaml, Haskell e Lisp são linguagens bem mais poderosas