为什么在这个Java程序中相同的输入的输出不同?

为什么在这个Java程序中相同的输入的输出不同?,java,Java,输出: package mk; import java.util.*; import java.lang.*; public class My { public static void main(String[] args) { // TODO Auto-generated method stub String a,b="mni nk"; Scanner in=new Scanner(System.in); a=in.

输出:

package mk;

import java.util.*;
import java.lang.*;

public class My {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String a,b="mni nk";
        Scanner in=new Scanner(System.in);
        a=in.next();
        System.out.println(a.replaceAll(" ", ""));
        System.out.println(b.replaceAll(" ", ""));
        if(a.replaceAll(" ","").equalsIgnoreCase(b.replaceAll(" ",""))) 

            System.out.println("True");

}
}

使用
nextLine()
而不是
next()
next()
只读取一个令牌,因此
a
的值是
“mni”
(与输出中一样),而不是
“mni nk”
,您试图实现什么?
mni nk
mni
mnink
Picked up _JAVA_OPTIONS: -Xmx512M