返回列表<;字符串>;从字符串中提取,该字符串可以按单词拆分,然后在Java中追加

返回列表<;字符串>;从字符串中提取,该字符串可以按单词拆分,然后在Java中追加,java,string,split,Java,String,Split,例如,如果我有字符串“Bob Bakes Brownies”,有没有办法让这个方法生成一个包含三个字符串的列表:“Bob”、“Bob Bakes”和“Bob Bakes Brownies” 任何反馈都将不胜感激。String=“Bob Bakes Brownies”; String string = "Bob Bakes Brownies"; List<String> list = Arrays.asList(string.split(" ")); List=Arrays.asLi

例如,如果我有字符串“Bob Bakes Brownies”,有没有办法让这个方法生成一个包含三个字符串的列表:“Bob”、“Bob Bakes”和“Bob Bakes Brownies” 任何反馈都将不胜感激。

String=“Bob Bakes Brownies”;
String string = "Bob Bakes Brownies";
List<String> list = Arrays.asList(string.split(" "));
List=Arrays.asList(string.split(“”));
创建要返回的列表。在
字符串中循环查找空格。对于找到的每个空间,向列表中添加一个子字符串,该子字符串从零索引开始,一直到该空间(不包括该空间)


当没有更多的空格时,将整个字符串添加到列表中,然后返回。

您可以使用.split()获取单个单词的数组,或者使用StringTokenizer

好的方法是
拆分(“”
字符串,这将生成一个数组。然后,每次将当前数组单元格与
StringBuilder
或普通连接连接时,您都可以在数组上迭代,并在每次迭代时打印结果。

public ArrayList solution(String s){

ArrayList结果=新建ArrayList();
StringBuffer sb=新的StringBuffer();
字符串[]数组=s.split(“”);
for(字符串str:array){
某人附加(str);
添加(sb.toString());
}
返回结果;
}
公共作废列表字符串(字符串s){

ArrayList结果=新建ArrayList();
int p=0;
对于(int i=0;i
试试这个:

static List<String> createStringList(String string) {
    String[] parts = string.split(" ");
    List<String> result = new ArrayList<>();
    StringBuilder currentString = new StringBuilder();
    for (int i = 0; i < parts.length; i++) {
        if (i > 0) {
            currentString.append(" ");
        }
        currentString.append(parts[i]);
        result.add(currentString.toString());
    }
    return result;
}
静态列表createStringList(字符串){
String[]parts=String.split(“”);
列表结果=新建ArrayList();
StringBuilder currentString=新建StringBuilder();
对于(int i=0;i0){
currentString.append(“”);
}
currentString.append(第[i]部分);
add(currentString.toString());
}
返回结果;
}

您可以使用.split(“”)和string concatenate这将返回一个包含三个元素“Bob”、“Bakes”和“Brownies”的列表,这不是预期的结果。不管我看了多少遍:例如,如果我有字符串“Bob Bakes Brownies”,有没有办法让这个方法生成一个包含三个字符串的列表:“Bob”,“Bob Bakes”和“Bob Bakes Brownies”我不明白这篇文章为什么会获得否决票。这是因为返回的列表是不可变的吗?在这种情况下修改结果列表是不现实的。它获得否决票是因为它没有按照要求做。我想知道它为什么会获得否决票。
    ArrayList<String> result = new ArrayList<String>();
    int p = 0;


    for (int i = 0; i < s.length() ; i++) {

         if(s.charAt(i) == ' ') {
             result.add(p, s.substring(0, i));
             p++;
         }
        if(i == s.length()-1)
            result.add(p,s);


    }
 }
static List<String> createStringList(String string) {
    String[] parts = string.split(" ");
    List<String> result = new ArrayList<>();
    StringBuilder currentString = new StringBuilder();
    for (int i = 0; i < parts.length; i++) {
        if (i > 0) {
            currentString.append(" ");
        }
        currentString.append(parts[i]);
        result.add(currentString.toString());
    }
    return result;
}