Wpis z mikrobloga

@Nofenak: jeśli chcesz podać typ, to podajesz typ. Jeśli typ jest 10 członowy / odpalasz konstruktor w tej samej linijce, to lepiej użyć var.
val x: int w javie nie miałoby sensu, bo jest sam int przecież. Ewentualnie final int jeśli chcemy mieć taką semantykę jak val.

Przykład kiedy bym użył var w javie:
var list = new Arraylist<String>();

Oprócz tego gdy iteruję się w pętli:
for (var product: shop.getProducts())
Zamiast:
@Nofenak: jak masz typ który wprost wynika to owszem
var abc = new Xyz()

A jak masz coś co nie wiadomo czym będzie to nie koniecznie
var abc = KlasaXYX.GetRandomFoo()
To jest i tak tylko do zmiennych lokalnych, w innych przypadkach jesteś nadal zmuszony podać typ. Imo upraszcza i skraca kod, zwłaszcza gdy masz jakieś #!$%@? generyki.
Na tyle długo pracowałem przy językach ze słabym albo dynamicznym typowaniem (PHP, Perl i Python) żeby lubieć i szanować silne typowanie. Spędzenie 2 sekund ekstra na napisanie jawnego typu jest przejawem tego szacunku ( ͡° ͜ʖ ͡°) Ale w takich oczywistych przykładach jak podawali @Blomex i @obieq , np:

for (var product: shop.getProducts())

var abc = new Xyz()

jestem oczywiście w stanie przełknąć. Natomiast tego:

var abc =