输入一串字符串,比如asdsaf asdasda dasdasda asdasdad dsafsadsa asfaqeqe saddadas。
然后输入一个数字让字符串按输入的数字自动换行,比如输入字符串20,则输出为:
asdsaf asdasda dasda
sda asdasdad dsafsad
sa asfaqeqe saddadas
该函数的返回值为预处理后的文本。预处理后的文本为每一节,及其所在的行号。中间以分号隔开。若一个节跨越了多行,则行号用逗号隔开,并从小到大进行排列。
比如以上结果就为:asdsaf【1】; 【1】,asdasda【1】; 【1】,dasdasda【1,2】; 【2】;
asdasdad【2】; 【2】; dsafsadsa【2,3】; 【3】; asfaqeqe【3】; 【3】; saddadas
尽量给一个详细的思路,或者完整的代码。我在自动换行加一这里遇到了一些问题。
以下是本人的部分代码:
import java.util.Scanner;
public class HuanHnag1 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("输入字符串");
String str=sc.nextLine();
int count=0;
System.out.println("输入换行数字");
int x=sc.nextInt();
for(int i=0;i<str.length();i++) {
System.out.print(str.charAt(i));
count++;
if(count==x) {
System.out.println();
count=0;
}
}
System.out.println();
for(int row=1;row<=4;row++) {
String s1=str.replaceAll(" ","("+row+");"+" "+"("+row+");");
System.out.print(s1);
}
}
public static String[] StrToArray(String str)
{
String[] str_array = new String[str.length()];
for (int cnt = 0; cnt < str.length(); cnt++)
{
// str_array[cnt] = str[cnt];
}
return str_array;
}
}