java printf 无法打印 char 数组

标签 java

我正在寻找对我的java代码的帮助,因为我只想打印大写的ASCII。所以我创建了一个数组并运行一个 for 循环。我创建了一个 if 条件来访问 65 到 90 之间的字符,然后我使用这种格式来打印值系统。

out.printf("%c : ",ch[x]).

不幸的是,我的输出是垃圾。 这是完整的代码:

           for(int x=0; x<ch.length; x++) {
            if(ch[x]>=65||ch[x]<=90) {
               System.out.printf("%c ",ch[x]);
            }
          }

最佳答案

正如@YCF_L所说,使用&&,并且可能,我推荐forEach:

char[] ch = new char[]{'A', 'z', 'S', 'Z', 'H', '1', 'o'};
for (char c : ch) {

    if (c >= 65 && c <= 90) {
        System.out.printf("%c ", c);
    }
}

输出

A S Z H 
<小时/>

ideone demo

关于java printf 无法打印 char 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47741001/

相关文章:

检查 URL 是否符合模式的 Java 方法

java - 生成的 JAR 文件未执行

日期对象中的 Java DateFormat

java - 相同的代码在java中有效,但在android中无效

java - 使用 CompletableFutures 和 java 时的 PlayFramework 自定义执行程序

java - 获取资源路径

java - 处理反编译代码中的标签

java - Jackson 默认使用自定义 JSON 反序列化器

java - 使用 Java 接口(interface)作为参数强制执行严格(更好)类型安全的想法

Java Swing 无法在 mac os 10.15 上显示 FileDialog