Java 如何打印相同的字符串,以空格分隔n次

Java 如何打印相同的字符串,以空格分隔n次,java,string,split,Java,String,Split,我想让圣诞老人说“Ho”总共n次,其中我指定“n”。 我知道如何打印n次,但我不知道如何在“Ho”之间正确插入分隔符,使结果看起来像:“Ho Ho” 下面给出了我对其进行编码的尝试: public class Main { public static String repeat(String str, int times) { return new String(new char[times]).replace("\0", str); } public s

我想让圣诞老人说“Ho”总共n次,其中我指定“n”。 我知道如何打印n次,但我不知道如何在“Ho”之间正确插入分隔符,使结果看起来像:“Ho Ho”

下面给出了我对其进行编码的尝试:

public class Main
{
    public static String repeat(String str, int times) {
        return new String(new char[times]).replace("\0", str);
    }
    public static void main(String[] args) {
        Scanner s=new Scanner(System.in);
        String Ho="Ho";
        int n=s.nextInt();
        System.out.println(repeat(Ho, n)+"!");
    }
}
自Java 11以来 我们可以使用。有了它,您的代码可以看起来像

int n = 3;
System.out.println("Ho" + " Ho".repeat(n-1) + "!");
//output: Ho Ho Ho!
自Java8以来 我们可以使用with空格作为分隔符

StringJoiner sj = new StringJoiner(" ");
String str = "Ho";
int n = 3;
for (int i = 0; i<n; i++){
    sj.add(str);
}
String text = sj.toString();
System.out.println(text); //Ho Ho Ho
自Java 11以来 我们可以使用。有了它,您的代码可以看起来像

int n = 3;
System.out.println("Ho" + " Ho".repeat(n-1) + "!");
//output: Ho Ho Ho!
自Java8以来 我们可以使用with空格作为分隔符

StringJoiner sj = new StringJoiner(" ");
String str = "Ho";
int n = 3;
for (int i = 0; i<n; i++){
    sj.add(str);
}
String text = sj.toString();
System.out.println(text); //Ho Ho Ho
自Java 11以来 我们可以使用。有了它,您的代码可以看起来像

int n = 3;
System.out.println("Ho" + " Ho".repeat(n-1) + "!");
//output: Ho Ho Ho!
自Java8以来 我们可以使用with空格作为分隔符

StringJoiner sj = new StringJoiner(" ");
String str = "Ho";
int n = 3;
for (int i = 0; i<n; i++){
    sj.add(str);
}
String text = sj.toString();
System.out.println(text); //Ho Ho Ho
自Java 11以来 我们可以使用。有了它,您的代码可以看起来像

int n = 3;
System.out.println("Ho" + " Ho".repeat(n-1) + "!");
//output: Ho Ho Ho!
自Java8以来 我们可以使用with空格作为分隔符

StringJoiner sj = new StringJoiner(" ");
String str = "Ho";
int n = 3;
for (int i = 0; i<n; i++){
    sj.add(str);
}
String text = sj.toString();
System.out.println(text); //Ho Ho Ho
公共类主{
公共静态void main(字符串[]args){
扫描仪s=新的扫描仪(System.in);
字符串ho=“ho”;
int n=s.nextInt();
System.out.println(重复(ho,n)+“!”;
}
公共静态字符串重复(字符串str,int次){
StringBuilder=新的StringBuilder();
对于(int i=0;i
public类Main{
公共静态void main(字符串[]args){
扫描仪s=新的扫描仪(System.in);
字符串ho=“ho”;
int n=s.nextInt();
System.out.println(重复(ho,n)+“!”;
}
公共静态字符串重复(字符串str,int次){
StringBuilder=新的StringBuilder();
对于(int i=0;i
public类Main{
公共静态void main(字符串[]args){
扫描仪s=新的扫描仪(System.in);
字符串ho=“ho”;
int n=s.nextInt();
System.out.println(重复(ho,n)+“!”;
}
公共静态字符串重复(字符串str,int次){
StringBuilder=新的StringBuilder();
对于(int i=0;i
public类Main{
公共静态void main(字符串[]args){
扫描仪s=新的扫描仪(System.in);
字符串ho=“ho”;
int n=s.nextInt();
System.out.println(重复(ho,n)+“!”;
}
公共静态字符串重复(字符串str,int次){
StringBuilder=新的StringBuilder();

对于(int i=0;i使用for循环。再试一次,我敢打赌你能做到。使用for循环。再试一次,我敢打赌你能做到。使用for循环。再试一次,我敢打赌你能做到。使用for循环。再试一次,我敢打赌你能做到。+1我不知道这个新的Java 8功能!感谢你让我注意到它;我终于可以取消它了我的
字符串。重复
实用函数。@varzeak没问题。您可能还对
String.join
方法感兴趣,或者如果您想使用
stream()
您也可以使用
someStream.collect(Collectors.joining(delimiter))
:)+1我不知道Java 8的这个新功能!谢谢你提醒我注意它;我终于可以去掉我的
字符串了。重复
实用函数。@varzeak没问题。你可能还对
String.join
方法感兴趣,或者如果你想使用
stream()
你也可以使用
someStream.collect(Collectors.joining(delimiter))
:)+1我不知道这个新的Java 8功能!感谢您提醒我注意它;我终于可以去掉我的
字符串了。重复
实用函数。@varzeak没问题。您可能还对
字符串.join
方法感兴趣,或者如果您想使用
流()
您还可以使用
someStream.collect(收集器.joining(分隔符))
:)+1我不知道Java 8的这个新功能!谢谢你提醒我注意它;我终于可以去掉我的
字符串了。重复
实用函数。@varzeak没问题。你可能还对
String.join
方法感兴趣,或者如果你想使用
stream()
你也可以使用
someStream.collect(收集器.连接(分隔符))
:)