Better way to read from System.in