Java split()返回一个空的第一个元素

是的

我有一个字符串[] = [5 5,1 2 N,LMLMLMLMM,3 3 E,MMRMMRMRRM]

当我分割第二和第四元素时。我懂了

[, L, M, L, M, L, M, L, M, M]

[, M, M, R, M, M, R, M, R, R, M]

import java.io.*;

public class Instruction {
public String[] instructionList;
public String filePath;

public Instruction(String fileName) {
    this.filePath = fileName;
}

public String[] readFile() throws IOException {
    FileInputStream in = new FileInputStream(this.filePath);
    BufferedReader br = new BufferedReader(new InputStreamReader(in));

    int n = 5;
    instructionList = new String[n];

    for (int j = 0; j < instructionList.length; j++) {
        instructionList[j] = br.readLine();
    }
    in.close(); 
    return instructionList;
}}

import java.util.Arrays;
public class RoverCommand {

public static void main(String[] args) throws Exception {

//Create new Instruction object with directions.txt.                
    Instruction directions = new Instruction("directions.txt");
    String[] instructions = directions.readFile();              
    String roverInstructions = Arrays.toString(instructions[2].split(""));
    System.out.println(roverInstructions);

}

我尝试替换空白空间,但无济于事。如何在不返回此空的第一个元素的情况下split()?

杰森·斯珀斯凯(Jason Sperske)

String.split() 采用正则表达式,因此它可能无法按您期望的方式运行,但是,如果要使用它,可以执行以下操作:

System.out.println(Arrays.toString("LMLMLMLMM".split("(?!^)")));

输出以下内容:

[L, M, L, M, L, M, L, M, M]

是正则表达式的解释:

(?!^) Negative Lookahead - Assert that it is impossible to match the regex below
   ^ assert position at start of the string

但是,这将为您提供相同的输出:

System.out.println(Arrays.toString("LMLMLMLMM".toCharArray()));

在这种情况下,我主张toCharArray()两者都可以使用双字节字符,因此最终归结为可读性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java split()返回一个空的第一个元素

来自分类Dev

Java访问枚举的第一个元素

来自分类Dev

Java 返回我选择的最长单词,但返回列表中的第一个单词而不是最后一个

来自分类Dev

Java .split-删除第一个匹配项

来自分类Dev

如何在Java中访问列表的第一个非空术语?

来自分类Dev

如何从Selenium Java中的json列表中获取第一个元素?

来自分类Dev

数组将0添加为第一个元素,而不是我的输入[java]

来自分类Dev

按Java列表中的第一个元素过滤

来自分类Dev

按内部列表的第一个元素对列表列表进行排序(Java或groovy)

来自分类Dev

Java链表与第一个元素进行比较,并使用peek()方法删除

来自分类Dev

Java流:流的第一个元素减去流的其余部分的总和

来自分类Dev

搜索正在跳过Java链表中的第一个元素

来自分类Dev

Java XPATH 只选择 child 的第一个元素

来自分类Dev

如何初始化双向链表,然后在java中添加第一个元素?

来自分类Dev

为什么这个java迭代器循环也打印第一个元素?

来自分类Dev

返回Java 8流中的第一个匹配项(类似于_.find)

来自分类Dev

IBM Watson语音到文本仅使用Java SDK返回第一个单词

来自分类Dev

Java中的任务执行器,可返回第一个结束任务

来自分类Dev

为什么我无法访问从Java的StringTokenizer返回的第一个令牌?

来自分类Dev

返回任何字符串中的第一个单词(Java)

来自分类Dev

返回Java 8流中的第一个匹配项(类似于_.find)

来自分类Dev

Xpath 总是在 JAVA 中返回 XML 的第一个子节点

来自分类Dev

记住从Java文件读取的第一个值

来自分类Dev

用Java制作我的第一个项目

来自分类Dev

Java ArrayList缺少第一个值

来自分类Dev

Java:删除拆分中的第一个单词

来自分类Dev

值对并使用第一个 java 进行排序

来自分类Dev

Java 期待“类名{(){”。注意第一个 {

来自分类Dev

Java获取下一个Enum值或从第一个开始

Related 相关文章

  1. 1

    Java split()返回一个空的第一个元素

  2. 2

    Java访问枚举的第一个元素

  3. 3

    Java 返回我选择的最长单词,但返回列表中的第一个单词而不是最后一个

  4. 4

    Java .split-删除第一个匹配项

  5. 5

    如何在Java中访问列表的第一个非空术语?

  6. 6

    如何从Selenium Java中的json列表中获取第一个元素?

  7. 7

    数组将0添加为第一个元素,而不是我的输入[java]

  8. 8

    按Java列表中的第一个元素过滤

  9. 9

    按内部列表的第一个元素对列表列表进行排序(Java或groovy)

  10. 10

    Java链表与第一个元素进行比较,并使用peek()方法删除

  11. 11

    Java流:流的第一个元素减去流的其余部分的总和

  12. 12

    搜索正在跳过Java链表中的第一个元素

  13. 13

    Java XPATH 只选择 child 的第一个元素

  14. 14

    如何初始化双向链表,然后在java中添加第一个元素?

  15. 15

    为什么这个java迭代器循环也打印第一个元素?

  16. 16

    返回Java 8流中的第一个匹配项(类似于_.find)

  17. 17

    IBM Watson语音到文本仅使用Java SDK返回第一个单词

  18. 18

    Java中的任务执行器,可返回第一个结束任务

  19. 19

    为什么我无法访问从Java的StringTokenizer返回的第一个令牌?

  20. 20

    返回任何字符串中的第一个单词(Java)

  21. 21

    返回Java 8流中的第一个匹配项(类似于_.find)

  22. 22

    Xpath 总是在 JAVA 中返回 XML 的第一个子节点

  23. 23

    记住从Java文件读取的第一个值

  24. 24

    用Java制作我的第一个项目

  25. 25

    Java ArrayList缺少第一个值

  26. 26

    Java:删除拆分中的第一个单词

  27. 27

    值对并使用第一个 java 进行排序

  28. 28

    Java 期待“类名{(){”。注意第一个 {

  29. 29

    Java获取下一个Enum值或从第一个开始

热门标签

归档