【问题标题】:Counting the characters of a string and than placing the value inside a for loop计算字符串的字符,然后将值放在 for 循环中
【发布时间】:2013-10-06 13:20:05
【问题描述】:

我目前正在学习 Java 编程入门课程,并且一直在设置以下练习:

编写一个程序,可以从一系列问题中提出一系列问题 字符串。它应该在问题下方打印一行星号,并带有 一排星星与上面打印的问题长度相同。

以下是我目前编写的代码。 starLineExercise 类具有一个名为 starLine 的方法,我在下面开始编写它。 starLine 方法需要打印与前面每个 System.out.println 命令中的字符一样多的“*”。

我尝试为每个问题创建一个字符串对象,然后对其进行计数,并将其放入 for 循环中,但 Eclipse 给我一个错误,提示无法解析计数变量。

import java.util.Scanner ;
public class starLineExercise{
public static void main(String[] args){
    Scanner sc = new Scanner (System.in);
    System.out.println ("Please enter your name");
    starLine();
    String name = sc.nextLine();
    starLine();
    System.out.println("Pleae enter your age");
    starLine();
    int age = sc.nextInt();
    System.out.println("Your name is " + name + " and your age is " + age);

}

public static void starLine(){
    for (int i = 0; i < 20; i++);
        System.out.println("*");
}
System.out.println("");
 }
}

【问题讨论】:

  • 请发布显示问题的代码
  • 上面的代码不会尝试计算字符串的长度。向我们展示您如何尝试学习字符串的长度。

标签: java string for-loop count


【解决方案1】:

您需要更改代码中的一些内容:

  1. 在打印之前将您的问题保存在 String 中。
  2. 更改starLine() 方法以获取参数,您可以在其中传递String 的长度。
  3. starLine() 方法中的硬编码20 更改为使用此参数。

【讨论】:

  • @ReeceAkhtar:不客气。如果您认为这回答了您的问题,请不要忘记通过将其标记为正确来接受它。如果您不接受任何答案,那么未来人们将不太愿意回答您的问题。
【解决方案2】:

创建一个既可以打印问题又可以开始的方法。

 public void printFormattedQuestion(String question);
     System.out.println(question);
     for(int i=0;i<question.length();i++) {
         System.out.print("*");
     }
     System.out.println();
 }

所以基本上你使用的是由String 类型的对象提供的length() 方法,这将返回问题中的字符数,因此你可以在 for 循环中使用它来打印与问题中有字符。

【讨论】:

    猜你喜欢
    • 2014-05-06
    • 1970-01-01
    • 2021-06-26
    • 1970-01-01
    • 2022-01-03
    • 1970-01-01
    • 2015-12-27
    • 2013-03-10
    • 1970-01-01
    相关资源
    最近更新 更多