java两个相同字符串false

背景是解析一个pdf文档,得到了一个字符串,包含一个【⾏】字,与idea中手动输入的正常【行】字的equals结果为false

       String s1 = "⾏";
        String s2 = "行";
        System.out.println(Arrays.toString(s1.getBytes()));
        System.out.println(Arrays.toString(s2.getBytes()));
        System.out.println(s1.equals(s2));
运行结果

img

有没有什么办法使两个字符equals结果为true

解析一个pdf文档,得到了一个字符串,包含一个【⾏】字,里面包含特殊字符吧

经过测试,你的这两个字体是不一致的,输出的字体都是一样的,这是你复制出现了问题,自己手动修改一下就好了

img

img

你的意思是让这两个字符串相等。从本质上s1不等于s2.

这个是不同字体的.你应该判断的是相似度. https://zhuanlan.zhihu.com/p/91645988 看下这个.

编码不一样吧