我正在尝试将列表中的所有内容转换为大写,但我遇到了麻烦。我收到了最后一行的错误:
方法图(功能不适用于 参数(字符:: toUppercase)
但我不确定如何修复它。另外,如何显示此列表中" g"?
之后的所有字符 public static void main(String[] args) {
List<Character> list = new ArrayList<>();
String alphabet = "abcdefghijklmnopqrstuvwxyz";
SecureRandom random = new SecureRandom();
for (int i = 0; i < 30; ++i)
{
list.add(alphabet.charAt(random.nextInt(26)));
}
System.out.println("Ascending: ");
list.stream().sorted().forEach(System.out::print);
System.out.println("Characters in uppercase: ");
list.stream().map(Character::toUpperCase).collect(toList());
}
答案 0 :(得分:0)
你的代码拼写错误了 请添加&#34;)&#34;在args之后并使用正确的方法名称:toUpperCase
答案 1 :(得分:0)
正如Oleg所说,您的错误消息表明您的编译代码引用getUppercase
c C 的实例。您的代码示例看起来不错,适合我。也许你只需要重新编译?
为了过滤掉前六个字母,你可以比较整数这样的字符:
Stream.of('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
'u', 'v', 'w', 'x', 'y', 'z')
.map(Character::toUpperCase)
.filter(c -> c > 'G')
.forEach(System.out::print);
// HIJKLMNOPQRSTUVWXYZ