有没有办法一次从输入中读取单个字符并对其进行处理,而无需对词汇表进行标记?
答案 0 :(得分:12)
Strings上的toCharArray()函数在这里可能很有用。
for(char c : s.toCharArray())
System.out.println(c);
并且只打印字符串中的小写字母 - Thanks @fge
for(Character c : s.toCharArray()){
if(Character.isLowerCase(c))
System.out.println(c);
}
答案 1 :(得分:3)
您可以使用read()
中的BufferedReader
,{{3}}一次只能读取一个char
。
答案 2 :(得分:1)
您可以使用Guava的CharMatcher从字符串中提取小写字母,然后使用Joiner将每个字符放在一个新行上。
您可以在一行代码中完成所有这些操作,如下所示:
System.out.println(Joiner.on('\n').join(Lists.charactersOf(CharMatcher.JAVA_LOWER_CASE.retainFrom(s))));