如何不计算 StringTokenizer 中的空格

How not count blank spaces in StringTokenizer

我有这条线

StringTokenizer tk=new StringTokenizer (b=10," =",true);

我的输出是

b
=
10

这很完美,但如果我的台词是这样的话

StringTokenizer tk=new StringTokenizer (DEFI b=10," =",true);

我的输出是

DEFI

b
=
10

我不想在 ST 中包含那个空的白色 space,我怎样才能避免包含白色 space 因为我想要这种输出

DEFI
b
=
10

如果可以,我建议使用 String.split() 方法:

String[] tokens = "DEFI b=10".split("(\s|(?=\=)|(?<=\=))");

字符串分词器从指定字符串中信任字符串分词器:(https://docs.oracle.com/javase/7/docs/api/java/util/StringTokenizer.html)

      public StringTokenizer(String str, String delim, boolean returnDelims)

作为您的参数,您有一个声明 int 值的对象声明,一个等号的 delim 和一个为真的 delim 标志(returns delim 字符作为标记)

也许您应该将您的 String tokenizer 实例重构为以下内容:

     String b = "DDEFI-b-=-10"; //Create the string to be evaluated

     String delim = "-"; //Create a delim which serves as a separator

(将字符串定义为 "DEFI-b-=-10" - 将为您的 delim 提供正确的间距)

     StringTokenizer tk= new StringTokenizer (b, delim);

    /* Loop through the elements printing out the specified string */

     while(tk.hasMoreElements()) {
          System.out.println(tk.nextToken());
       }



     //Result
     DEFI
     b
     =
     10