【问题标题】:How to convert a sub-string into an int from a string [duplicate]如何将子字符串从字符串转换为 int [重复]
【发布时间】:2020-07-27 18:07:09
【问题描述】:

我在java中有以下字符串

String str = "1 10 9 2 4 6 3 56 3 4 45 55";

我想子串“1”、“2”、“3”、“4”等等......并将它们转换成一个整数数组。我试图找到 " " 空格的索引作为子字符串 "1"、"2"、"3"、"4" 等的开始和结束,但我没有成功。请帮忙。

【问题讨论】:

  • 除非您将代码包含在您的问题中,否则我们无法为您提供帮助。
  • 您可能还想考虑使用String类的split()方法。
  • 为什么是1、2、3和4,它们有什么特别之处?为什么不是 6 个?

标签: java int substring


【解决方案1】:

我想从您只提到 1、2、3 和 4 作为子字符串的事实来看,您只想检索一位数的子字符串。为此,您首先必须在空格上拆分:

String[] split = str.split(' ')

那么就可以保留数组中所有长度为1的元素:

List<String> result = new ArrayList<>();
for (String elem : split) {
    if (elem.length() == 1) {
        result.add(elem);
    }
}

请注意,您可以使用 Integer.parseInt(String str) 将字符串解析为整数。

另一种方法是使用正则表达式提取一位数字:[^\s]([0-9])[$\s]

编辑:根据您给定的字符串,9 和 6 也将出现在 result 列表中,因为它们也是一位数字

【讨论】:

    猜你喜欢
    • 2015-06-02
    • 2015-06-18
    • 2017-05-07
    • 1970-01-01
    • 2020-08-27
    • 2012-01-24
    • 2013-11-04
    • 2021-12-25
    • 2016-07-07
    相关资源
    最近更新 更多