编写一种方法来多次打印出一个字符串“Name”

时间:2011-04-13 07:03:54

标签: java string loops accumulator

我正在回答一个关于编程简介课程的问题而不能 - 在阅读我的笔记,大Java书籍和在线查找 - 找出从哪里开始。

好像它应该很简单,但我只需要开始。所有这些都是针对Java的,并且正在Eclipse中进行。

任务是接受一个名称(“名称”)和一个数字(整数x)并在一行上显示“名称”x次,在另一行上显示x-1次,依此类推直到您只显示一次名称。它似乎应该是一个反向累加器,但我在启动我的方法时遇到了麻烦。我该如何开始?我知道我不能像在python或其他语言中那样在Java中使用字符串,但是如何在不构建数组或输入的情况下打印“名称”x次?

System.out.println("name" + " " + "name" + " "...).

任何建议都表示赞赏。我是新手。谢谢!

10 个答案:

答案 0 :(得分:2)

你需要一个循环,这是编程语言的一个共同特征。

仔细查看java for循环。

补充提示:

System.out.println("test")将参数打印在一行中,而System.out.print("test")CR/LF之后不添加test

答案 1 :(得分:1)

您应该阅读java flow control statementsforwhile结构可以让您按照自己的意愿行事。

答案 2 :(得分:1)

您可以使用System.out.printSystem.out.println

来完成此操作

以下是示例代码:(不是您想要的实际代码,只是一个SAMPLE)

import java.io.*;

public class StringNameTest
{
    public static void main(String args[])
    {
            String strNumber = "";
            String strName = "";
            int intNumber;
            try 
            {
                //  open up standard input
                BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

                //  prompt the user to enter their name
                System.out.print("Enter your name: ");
                strName = br.readLine();

                System.out.print("Enter the number of times you want to print your name: ");
                strNumber = br.readLine();
                intNumber = Integer.parse(strNumber);

                for (row = 0; row < intNumber; row++)
                {
                    for(col = 0; col < intNumber; col++)
                        System.out.print(strName + " ");

                    System.out.println("");
                }
            } 
            catch (Exception ex) {
                System.out.println(ex.getMessage());
                System.exit(1);
            }


    }
}

希望这有帮助。

答案 3 :(得分:1)

您的方法获取一个包含名称和计数的字符串。使用一个for循环计数,另一个循环重复名称值,你应该能够得到你想要的输出。

System.out是一个打印流,它有两个println()输出以换行符结束的行,print()输出一个字符串而不以换行符结束。

答案 4 :(得分:0)

使用计数为x的外循环和计数为(x - 外循环计数器)的内循环。注意常见的“一次性”错误。

答案 5 :(得分:0)

Java没有内置的String重复是正确的。但是你可以定义自己的方法来完成这个。

public static String repeated(String s, int times) {
  StringBuilder sb = new StringBuilder();
  // TODO: append /s/ to /sb/ for /times/ times.
  return sb.toString();
}

很高兴你想要使用这个“运算符”而不是将所有内容放在一个大的代码块中。这有助于保持程序的可读性。

答案 6 :(得分:0)

首先想到:你需要n行。所以,输入一个循环。

for (int i = 0; i < n; ++i)
{

然后:您需要在i字符串上n - i打印字符串 for (int j = 0; j < n - i; ++j) { 次。输入嵌套循环:

           System.out.print(name + " ");
     }

然后开始打印名称:

println

注意我没有使用n - i,因为我们希望所有的名字都在同一条线上 现在,当我们打印 System.out.println(); 次时,您需要结束该行:

}

关闭我们的外循环:

n

如果您不知道如何让程序向用户询问名称和整数String name = null; int n = 0; try { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter the name: "); name = br.readLine(); System.out.print("How many times (n): "); n = Integer.parseInt(br.readLine()); } catch (Exception e) { e.printStackTrace(); System.exit(-1); // exit!, there was an error }

{{1}}

答案 7 :(得分:0)

public class test{

    public static void main(String[] args){

        int i = 0;
        int j = 20;

   for(i = 1; i <= j; i++){

          System.out.println("My Name");


   } //ends for loop

     // use system.out.print("") for same line 


}    //ends static void main

}

答案 8 :(得分:0)

int x;
int y = 1;

x = scanner.nextInt();

for (int i = 1; i <= x; i++) {
    for (int j = 1; j <= y; j++) {
        System.out.print("O");
    }
    System.out.println();
    ++y;
}

答案 9 :(得分:0)

{
"_id" : "59fffda313d02500116e83bf::5a059c67f3ff3b001105c509",
"quizzes" : [ 
    {
        "topics" : [ 
            ObjectId("5a054210d74fe90011d5f5e1")
        ],
        "isCorrect" : false,
        "status" : 2,
        "isUsed" : true,
        "askBack" : true,
        "isRestricted" : false,
        "rejected" : false,
        "createdAt" : ISODate("2017-11-10T12:57:33.910Z"),
        "updatedAt" : ISODate("2017-11-10T12:57:33.910Z"),
        "answerRead" : true,
        "correctAnswer" : "5a054210d74fe90011d5f5e2",
        "question" : ObjectId("5a054210d74fe90011d5f5e0"),
        "author" :{
                    "_id": "59fffda313d02500116e83bf",
                    "username": "f2",
                    "lastName": "2",
                    "firstName": "f",
                    "active": false,
                    "meta": {
                         "totalInvites": 0,
                         "totalFriends": 1
                   }
          },
        "participant": {
                  "_id": "5a059c67f3ff3b001105c509",
                  "username": "chandan",
                  "lastName": "kumar",
                  "firstName": "chandan",
                  "active": false,
                  "meta": {
                     "totalInvites": 0,
                     "totalFriends": 16
                  }

     "_id" : ObjectId("5a05a23dfc698f00118470f5")
    }
],
"participants" : [ 
    ObjectId("5a059c67f3ff3b001105c509"), 
    ObjectId("59fffda313d02500116e83bf")
],
"__v" : 0,
"skippedQuestionIds" : []
}