もうjavaは久しく触ってないですが。
var (型推論)が導入されていろいろ物議を醸しているみたい。
C#では10年も前に実装され、散々され尽くしたであろう議論がまた行われてるのを見てるといろいろと考えてしまう。
そこそこよく見かけるjava使いの人もvar否定的な感じだったりしてC#er的にはうーんと思ったり。
「読む時に読みづらい」というのを見かけるけど、これは多分慣れだと思うんだよなぁ。
C#でも結局ほとんどがvarで書かれてるし。
ただ、java10が使えない環境がたくさんあるというのは考える必要があるかもしれない。
あと、型推論について勘違いしてる人がいるけど、varで書いてもビルドの時点で型は確定する。
あくまで右辺から型が一意に決まるときのみ使えるのであって、そうでない時はそもそもビルドエラーになる。
javaScriptみたいに動かすまで型がわからないとかそういうことはない。
ちなみにMSDNではvarを使用しないほうがいい場合をコーディングルールで示しています(暗黙的に型指定されるローカル変数節)
javaでも参考になるのでは。
C# のコーディング規則 (C# プログラミング ガイド) | Microsoft Docs