java - 在java中获取列表元素的最后一部分

标签 java string list text

我想开发一个小程序,它读取文本文件并将值存储到列表中。该列表具有以下格式:

[1234 nick, 243 56475, 13 mi87ke]

我想要完成的是仅提取每个列表元素的最后一部分。尽管我考虑了两种不同的方法,但我仍然没有得到正确的结果。

到目前为止我的代码如下:

 First approach:
        index = randomGenerator.nextInt(list.size());
        element = list.get(index);
        while (element.length() < 6 || element.length() > 8) {
             index = randomGenerator.nextInt(list.size());
             element = list.get(index).substring(element.lastIndexOf(" ")+1);  
        }

Second approach:
        index = randomGenerator.nextInt(list.size());
        element = list.get(index);
        while (element.length() < 6 || element.length() > 8) {
             index = randomGenerator.nextInt(list.size());
             element = list.get(index);
             String[] bits = element.split(" ");
             element = bits[bits.length-1];
        }

两种方法的输出是相同的:

leslie02
yakumo
Buddy1
yaseen
24 19871

我注意到长度 < 6 的元素仍然通过返回第一部分和第二部分来打印。有人知道为什么会发生这种情况以及是否有办法解决它?

最佳答案

我找到了问题的解决方案:

    index = randomGenerator.nextInt(list.size());
    element = list.get(index);
    String[] bits = element.split(" ");
    element = bits[bits.length-1];
    while (element.length() < 6 || element.length() > 8) {
         index = randomGenerator.nextInt(list.size());
         element = list.get(index);
         bits = element.split(" ");
         element = bits[bits.length-1];
    }

关于java - 在java中获取列表元素的最后一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42472977/

相关文章:

java - 获得拥有 1000 个关注者的推特用户

Java:找不到符号(Array 类)

python - 如何根据Python中以特定字符结尾的分隔符字符串拆分字符串列表?

java - 同时进行字符串操作 : insert words at certain indexes in string,

java - 为什么我的 `unmodifiableList` 是可修改的?

java - 使用 contains 方法避免重复

java - 如何从 ServletContext 获取 HttpServletRequest?

java - Spring 数据休息 : How can I make a json schema property required?

c# - 大写排列

c - C 中的 Char 数组