当前位置: 首页 > 知识库问答 >
问题:

在Java中“,”不是一个有效的分隔符吗?

冯沛
2023-03-14

字符串被正确插入,并且x坐标也被读取。这里出了什么问题?代码:

Coordinate addCoordinate(String coordinateString) {
        System.out.print(coordinateString);
        Scanner in = new Scanner(coordinateString);
        Coordinate coordinate = new Coordinate();
        in.useDelimiter(",");
        coordinate.x = in.nextInt();
        System.out.print(coordinate.x);
        coordinate.y = in.nextInt();
        System.out.print(coordinate.y);
        return coordinate;
    }

共有1个答案

钱志
2023-03-14

正如@user16320675在他的评论中提到的,对于“2,6\n”“2,6”这样的字符串,分隔符不会像您希望的那样工作。

您可以从删除coordinateString中包含的前导和尾随空白开始:

Coordinate addCoordinate(String coordinateString) {
  coordinateString = coordinateString.trim();
  ...

或者使用与逗号或任何空白字符匹配的其他分隔符:

in.useDelimiter(",|\\s*");
 类似资料:
  • 我在输入中有一个路径,没有统一的分隔符。 示例: null null 在Java中,如何在路径的第一部分的基础上统一分隔符?

  • 在字符串中分隔符的最后一次出现时拆分字符串的推荐Python习惯用法是什么?例如: 接受第二个参数,该参数是要拆分的分隔符的引用。与常规列表索引一样,表示从末尾开始的最后一个。如何做到这一点?

  • 问题内容: 对于在字符串中 最后一次 出现定界符时拆分字符串的建议Python惯用法是什么?例: 接受第二个参数,即要分割的分隔符的出现。像常规列表索引一样,表示末尾的末尾。如何才能做到这一点? 问题答案: 使用 或代替: 可让您指定分割次数,而仅分割一次,但总是返回固定数量的元素(前缀,定界符和后缀),并且对于单个分割情况而言更快。 演示: 两种方法都从字符串的右侧开始拆分;通过将最大值作为第二

  • 问题内容: 我有一个像这样的字符串: 我想拆分该字符串并选择作为分隔符。 我的代码如下所示: 我得到的是一个包含所有字符作为一个条目的数组: 有人知道为什么吗? 我不能用分割字符串吗? 问题答案: 在RegEx中被视为。因此,您需要对其进行转义:

  • 我有一个包含以下行的文件: 在上面的输出中,我想提取3个字段(数字2,4和最后一个)。我得到以下输出: 如何提取域名位于之后的最后一个字段?如何使用提取字段?