Dúvida bem básica - o que é syntax sugar?

queria saber por favor o que é syntaxe sugar do java

Segundo a Wikipédia, é uma sintaxe de fácil leitura, compreensão e expressão em linguagens de programação

Seria basicamente deixar algo mais facilmente legível ou expressível. Por exemplo:

 x += y

é o “Syntax Sugar” de:

x = x + y

Ou, em C:

 x[i] 

É o syntax sugar de:

*(a + i)

:slight_smile:

Não é bem isso que a wiki diz. Syntax Sugar refere-se a uma estrutura sintática cuja (única) finalidade é deixar o código mais legível ou fácil de digitar.
Não se refere a um código elegante, mas sim, a um recurso que uma linguagem fornece.

Não é à toa que existe até o texto:

As modificações sintáticas do Java 6 são um bom exemplo da inclusão de sintax suggars no lugar de recursos realmente relevantes da linguagem.

By the way, alguns syntax suggars não são tão inúteis quanto os críticos gostam de dizer.
Como exemplo, posso citar o for each, que usa o Iterator, evitando que um programador desatento percorra uma LinkedList pelo índice.

Outro tipo de crítica é que tem linguagens tão repletas de syntic sugars que acabam tendo o efeito contrário: ficam mais difíceis de ler.
Um exemplo comumente citado é o perl.