Java 11发布的String.strip()方法和现有的String.trim()方法都是去掉前后的空白字符,它们之间有什么区别?
首先这是一个历史原因,在unicode还没有普及之前,trim方法就存在了,所以当时trim只考虑了ascii码中的空白字符,但是在unicode字符集中空白字符比ascii码中要多,所以在使用unicode字符集时trim方法实际上去除的空白字符不完全,而strip方法则相当于是unicode版本的trim,它会去除所有unicode中的空白字符。
下面这个示例用于演示trim和strip对于unicode空白字符的处理区别。
运行后得到如下结果。
内容