Strange String issues in JVM languages