gpt4 book ai didi

java - 从字符串创建子字符串数组

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:39:44 24 4
gpt4 key购买 nike

我有一个没有空格的字符串,我想创建一个由单词的子字符串组成的数组。例如,假设字符串是 stackoverflow 数组应该是这样的:

[sta, cko, ver, flo, w]

我使用的代码如下,它只提供了第一项。任何帮助将不胜感激。

public static ArrayList<String> getWords(String s){
ArrayList<String> words = new ArrayList<String>();
for(int i=0;i<s.length(); i=i+3){
words.add(s.substring(i, 3));
}
return words;
}

最佳答案

您的代码有两个问题。一、中的“3”

s.substring(i, 3)

表示从字符串开头开始的第 3 个索引,而不是从 i 开始的第 3 个索引,所以您需要

s.substring(i, i + 3)

其次,如果字符串比 i + 3 短,你会得到一个异常。要解决这个问题,您可以使用 Math.min。它看起来像这样:

public static ArrayList<String> getWords(String s){
ArrayList<String> words = new ArrayList<String>();
for(int i=0;i<s.length(); i=i+3){
words.add(s.substring(i, Math.min(i + 3, i.length())));
}
return words;

关于java - 从字符串创建子字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44231684/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com