b가 다른 이유는 무엇입니까? 첫 번째 문자열에 \052
는 하나의 진수 이스케이프 시퀀스로 해석 (그래서 \044
입니다) 도착 때문에 0이있는 문자열이 Java에서 이상하게 동작합니다.
String a = "BuildGUID10035\0528\0440";
String b = "BuildGUID10035" + '\0' + 528 + '\0' + 440;
System.out.println("A: " + a);
System.out.println("B: " + b);
System.out.println(a.equals(b));
Java에서 문자 이스케이프에 대한 참조는 http://docs.oracle.com/javase/specs/jls/se7/html/jls-3.html#jls-3.10.6을 참조하십시오. – erikxiv