Java 如何对用户输入的字符串进行分组

Java 如何对用户输入的字符串进行分组,java,android,json,recursion,Java,Android,Json,Recursion,我是java编程新手。我的问题是,我想将用户输入字符串从EditText拆分为2、3、4、5和6组 例如,输入可能看起来像:“表中的闹钟有噪音” 我想把他们这样分组 例如:(闹钟)(闹钟)(打卡)(在桌子上)(桌子上)(吵闹) (表中的)(表中的)(表中的)(表中的)(表中的)(表中有噪音) 例如:(表中的闹钟)(表中的闹钟)(表中的闹钟)(表中的闹钟)(表中的闹钟)(表中的闹钟吵闹) 5号和6号也一样。之后,我可能会将这些存储在一个数组中 我只知道如何通过空格或其他分隔符拆分字符串。 这是我目

我是java编程新手。我的问题是,我想将用户输入字符串从
EditText
拆分为2、3、4、5和6组

例如,输入可能看起来像:“表中的闹钟有噪音”

我想把他们这样分组

例如:(闹钟)(闹钟)(打卡)(在桌子上)(桌子上)(吵闹)

(表中的)(表中的)(表中的)(表中的)(表中的)(表中有噪音)

例如:(表中的闹钟)(表中的闹钟)(表中的闹钟)(表中的闹钟)(表中的闹钟)(表中的闹钟吵闹)

5号和6号也一样。之后,我可能会将这些存储在一个数组中

我只知道如何通过空格或其他分隔符拆分字符串。 这是我目前的代码:

String[] text = editText.split(" ");
Log.d("Length", String.valueOf(text.length));
for (int i = 0; i < text.length; i++) {
    count = i;
    text[i] = text[i].trim();
    Log.d("Create Response", text[i]);
    params.add(new BasicNameValuePair("translate_me", text[i]));
}
String[]text=editText.split(“”);
Log.d(“长度”,String.valueOf(text.Length));
for(int i=0;i

但是我一点也不知道怎么做。有人能帮我吗?

可能重复:嵌套for循环是您最好的朋友
String[] text = editText.getText().toString().split(" ");
List<String> wordList = new ArrayList<String>(Arrays.asList(text)); 

List<String> groups = new ArrayList<String>();
getGroups(3, wordList);

public static void getGroups(int n, List<String> wordList) {

    String temp = "";

    if (wordList.size() <= n) {
        for (String s : wordList)
            temp = temp + s + " ";
        groups.add(temp.trim());
        return;
    }

    for (int i = 0; i < n; i++)
        temp = temp + wordList.get(i) + " ";

    groups.add(temp);
    wordList.remove(0);
    getGroups(n, wordList);
}
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

class Solution {

    public static List<String> groups = new ArrayList<String>();
    public static String text = "the alarm clock in the table is noisy";

    public static void main(String[] args) {
        List<String> wordList = new ArrayList<String>(Arrays.asList(text.split(" ")));
        getGroups(3, wordList);

        System.out.println(groups);
    }

    public static void getGroups(int n, List<String> wordList) {

        String temp = "";

        if (wordList.size() <= n) {
            for (String s : wordList)
                temp = temp + s + " ";
            groups.add(temp.trim());
            return;
        }

        for (int i = 0; i < n; i++)
            temp = temp + wordList.get(i) + " ";

        groups.add(temp.trim());
        wordList.remove(0);
        getGroups(n, wordList);
    }
}