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