首页 > 解决方案 > 确定名称是短名称、平均长度名称还是长名称

问题描述

我正在尝试编写 if/else 语句,因为我认为这将是我最好的方式。我需要它做的是确定名称是短名称、平均长度名称还是长名称。现在 13 是平均长度,这意味着我需要如下编码,但我似乎无法让它工作

现在可以使用

      System.out.println("Please Enter your first and last name");
String str = input.nextLine();
// here the code wil display the string's length and its first character
System.out.println("The number of characters in your name is " + 
str.length());

  if(str.length() == 13)
System.out.println("Your name is average length.");
else if (str.length() > 13)
System.out.println("Your name is long length.");
else if (str.length() < 13)
System.out.println("Your name is short length.");

标签: javastringsystem.out

解决方案


您对整体概念的想法是正确的,但正如 Andreas 指出的那样,您的代码存在一些语法错误。

Java 还要求您导入扫描仪来读取用户输入。我还调整了一行,从用户输入的总长度中减去一个,以补偿用户名中的空间。

每个人都从某个地方开始……这是我对帖子的第一个回复!坚持下去!

package javaapplicationName;
import java.util.Scanner;
public class JavaApplication41 {

    public static void main(String[] args) {
        // You'd want to grab the user's
        // input so we need to initialize a scanner object.
        Scanner input = new Scanner(System.in);
        System.out.println("Please Enter your first and last name");
        String str = input.nextLine();
        System.out.println("The number of characters in your name is " + (str.length() - 1));
        if (str.length() - 1 == 13) {
            System.out.println("Your name is average length.");
        } else if (str.length() - 1 > 13) {
            System.out.println("Your name is long length.");
        } else if (str.length() - 1 < 13) {
            System.out.println("Your name is short length.");
        }
    }
}

推荐阅读