通过整数因子在字符串中重复字符

时间:2014-09-18 03:49:01

标签: java string

嘿我需要帮助编写一个程序,该程序将接受一个字符串,并通过传递的int因子拉伸其中的字符。假设“Sing”是out字符串的值,2是int的值。在这种情况下,程序应该返回SSiinngg。我很失落,但这是我到目前为止所拥有的。谢谢!

public static String nRepetitions(String s,int n){
   for(int x=1; x<=n; x++){
       }
}

3 个答案:

答案 0 :(得分:1)

您只需要一个StringBuilder和两个for循环

StringBuilder builder = new StringBuilder();

for(int i = 0; i < s.length(); i++)
    for(int j = 0; j < n; j++)
        builder.append(s.charAt(i));

return builder.toString();

较慢,不推荐:

   String result = "";
   for(int i = 0; i < s.length(); i++)
       for(int j = 0; j < n; j++)
           result += s.charAt(i);

   return result;

答案 1 :(得分:1)

我编辑了返回字符串的方法,希望能为你效劳:

public static String nRepetitions(String s,int n){
  String output="";
  for ( int x=0; x< s.length(); x++){
         for(int y = 1; y<=n; y++){
             output=output + s.charAt(x);
           }
    }
  return output;
}  

答案 2 :(得分:0)

你可能想在这里使用StringBuilder。使用StringBuilder,您可以在字符串末尾附加字符。我还会考虑使用嵌套for循环和charAt()方法。也许是这样的:

public static String nReps(String s, int n){
    StringBuilder str = new StringBuilder();
    for (int i = 0; i < s.length(); i++){
        for (int j = 0; j<n; j++){
            str.append(s.charAt(i));
        }
    }
    return str.toString();
}