乘以字符串

时间:2013-01-16 17:20:51

标签: java string integer

如果您有一个字符串,例如:

String = "Hello world";

如何打印(n)次?

例如

System.out.print("Hello world" * 5);

给出输出:

Hello world
Hello world
Hello world
Hello world
Hello world

现在显然我不能像我一样将字符串乘以5。

我知道我必须将字符串转换为整数才能使用的东西吗?但是我该怎么做呢?

4 个答案:

答案 0 :(得分:8)

你会使用一个循环:

for(int i = 0; i < 5; i++) {
   System.out.println("Hello world");
}

但是我认为你需要在这里研究你的编程基础 - 一本关于java的好书对你来说比在SO上发布这样的问题更有用。

答案 1 :(得分:1)

在Python(我认为是Ruby)中,你可以通过“乘以”数字来连接字符串:

>>> print "Hello" * 5
HelloHelloHelloHelloHello

在Java中,有很多方法可以实现,从循环开始。顺便说一句,您可以在Java中多次连接字符串:

package test;

public class test {

public static void main(String[] args) {

    String s1 = "hello";
    for (String s = s1; s.length() <= 5 * s1.length(); s = s + s1)
        System.out.println(s);
}

}

现在,上面是一个不好的想法。 :-)如果重复,不要这样做,bc每次连接字符串并分配一个新字符串时,会创建一个新字符串并丢弃旧字符串 - 如果你执行的次数超过几次则非常低效。

总的来说,之前的海报是对的:选择一本关于Java的书 - 更好的是Python - 并学习!

答案 2 :(得分:0)

您可以创建一个方法来获取字符串以及需要打印字符串的值,如:

public String multiplyString(String s,int i){
   String result="";
   for(;i<0;i--){
       result += " "+result;   //for appending strings
   }
return result;
}

然后调用此方法:

System.out.print(multiplyString("Hello wrold",5));

答案 3 :(得分:0)

嘿,还学习了递归方法

public static void main(String[] args) throws IOException {

    test("Hello World ",5);

}

public static void test(String s,int x){

      if(x==0)return;
          System.out.println(s);
      test(s,--x);

}

Out put

Hello World 
Hello World 
Hello World 
Hello World 
Hello World