如何将一个字符串分成相等的n个字符组,在Java中填充空格?



如何创建一个方法,将输入一个字符串和一个整数n,并将输出字符串分成由n个字符组成的部分,并以空格分隔?例如:输入字符串:"THISISFUN"整数:3,结果:" this SISFUN"

当你回答的时候,你能不能试着解释一下代码的每一部分是做什么的?我真的很想了解它。

我尝试使用StringBuilder和split()方法,但问题是我不明白所有这些是如何工作的。因此,如果你想真正学习一些东西,特别是如果你根本找不到任何关于特定问题的帖子,我最终会有点轻率地粘贴来自不同在线文章的代码部分,这并不是最好的工作。我只能找到这样的东西:"如何将字符串分成n部分";以及"如何在特定字符后添加空格";这是类似的问题,但不相同。

有一种方法:

public static void splitString(String str, int groupSize){
char[] arr = str.toCharArray(); // Split the string into character array ①

// Iterate over array and print the characters
for(int i=0; i<arr.length; i++){
// If 'i' is a multiple of 'groupSize' ②
if(i > 0 && i % groupSize == 0){ ③
System.out.print(" "); 
}

System.out.print(arr[i]);
}
}

①将字符串拆分为字符数组(以便您可以单独访问字符)。您也可以使用charAt()方法来完成此操作,而无需将字符串拆分为数组。请阅读Javadoc以获取更多详细信息。

②检查循环计数器i是否为groupSize的倍数 ③注意System.out.print()的使用,因为我们不想打印换行符。这里您也可以使用StringBuilder,并在末尾打印内容,而不是在循环内打印字符。

最新更新