【问题标题】:Can't display words longer than 7 characters, always writes no words不能显示超过 7 个字符的单词,总是不写任何单词
【发布时间】:2023-02-14 17:28:41
【问题描述】:

我需要它从所有输入的单词中只写出那些长于 7 的单词,如果没有,那么它会说“无单词”,但即使有长度为 7 的单词,它也会写“无单词”

package example_1;
import java.util.Scanner;

public class lab9{
    public static void main(String[] args) {
        String[] input = Scan().split(" ");
        int words = 0;
        
        for(int i=0; i < input.length;i++) {
            if(input[i].charAt(0) <= 7) {
                System.out.print(input[i] + ' ');
                words++;
            }}
        if (words == 0) {System.out.print( "no words");}
    }
    public static String Scan() {
        String word;
        Scanner scn = new Scanner(System.in);
        System.out.print("input= ");
        word = scn.nextLine();
        scn.close();
        return word;
    }}

【问题讨论】:

  • 你想用if(input[i].charAt(0) &lt;= 7)建立什么?

标签: java


【解决方案1】:

您可以使用 String 类的 length() 方法修改 for 循环以检查单词的长度,并且只打印出长度大于 7 的单词。您还需要更新 if 语句的条件以检查是否有单词被打印为包括长度恰好为 7 的单词

【讨论】:

    【解决方案2】:

    只需将您的 if 子句 input[i].charAt(0) &lt;= 7 更改为 input[i].length() &gt;= 7

    【讨论】:

      猜你喜欢
      • 2019-06-02
      • 2022-11-10
      • 1970-01-01
      • 1970-01-01
      • 2016-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多