我有一个字符串,并希望在java中重复'l'次

sup*_*tar 1 java string integer

从一个循环,我将得到的价值l.想象这个值是3.因此我想要一个字符串重复3次.这意味着我想要执行字符串*l,但这是不可能的,因为一个是字符串,一个是int.我确实需要字符串重复l次数.

例如,如果输入的字符串是"cat"并且l结果为3,我将得到输出"catcatcat".谢谢

这是我的编码:

import java.util.Scanner;

public class Task2 { 
    public static void main (String[] args){
        Scanner kb=new Scanner(System.in); 


        System.out.println("Please give me a message:"); 

        String strMessage = ("^[?=.*!@#$%^&*]+$");
        strMessage=kb.nextLine();



        System.out.println("Thank you! Now please give me a keyword:"); 

        String strKeyword=kb.nextLine();    

        String strAlphabet= "abcdefghijklmnopqrstuvwxyz";

        double Intlength2 = strKeyword.length();
        double Intlength = strMessage.length(); 
        double Intlength3 = Intlength/Intlength2;
        Intlength3 = Intlength/Intlength2;

        for (int l=0; l<Intlength3; l++){ 
Run Code Online (Sandbox Code Playgroud)

Man*_*dis 6

  1. 制作一个StringBuilder并附加字符串l时间

    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < l; ++i) {
        sb.append(string);
    }
    
    String result = sb.toString();
    
    Run Code Online (Sandbox Code Playgroud)
  2. 如果您使用Java 8,那么还有一个"简单"的衬垫:

    String result = IntStream.range(0, l).mapToObj(i -> string).collect(Collectors.joining());
    
    Run Code Online (Sandbox Code Playgroud)
  3. 使用Guava库的解决方案:

    String result = Strings.repeat(string, l);
    
    Run Code Online (Sandbox Code Playgroud)
  4. 使用Apache Commons库的解决方案:

    String result = StringUtils.repeat(string, l);
    
    Run Code Online (Sandbox Code Playgroud)

作为旁注,l它不是一个好的变量名,因为它看起来像第一.