Java转义字符常见坑之\u000a\u0022等
众所周知,转义字符在java中有着特殊的地位,java对Unicode转移字符不会进行任何特殊的处理,只是简单的将其替换成相应的字符。 稍有不慎就会出现意想不到的效果,因此有建议在编写java程序时不要轻易使用这类转义字符。
最常见的坑货当属下面几个:
Unicode转义字符 | 含义 |
---|---|
\u000a | 换行符 \n |
\u000d | 回车符 \r |
\u007d | 大括号右半部 } |
\u007b | 大括号左半部 { |
\u0022 | 双引号半边 " |
\u002b | 加号 + |
\u003b | 分号 ; |
\u0061 -- \u007a | 字符 a-z |
\u0041 -- \u005a | 字符 A-Z |
输入字符后,点击 “Unicode 转 中文” 或者 “中文 转 Unicode” 按钮进行转换。
事例一:
public static void main(String[] args) {
// \u000a System.out.println("hello world");
}
运行之后会发现 // 注释没起作用,此处就是 \u000a 在搞事。
事例二:
public static void main(String[] args) {
if(false == true){
//这些字符是魔术:\u000a \u007d \u007b
System.out.println("false为真");
}
}
事例三:
public static void main(String[] args) {
//常见转义字符混淆题 判断输出字符串长度
System.out.println("a\u0022.length()+\u0022b".length());
}
上面这个题应该就是考察转义字符最最常见的面试题了,大家运行一下或者将转义字符转义之后再看就会一清二楚的。
PS: 最后的最后给大家奉送一个关于转义字符的惊喜,大家可以将以下代码执行体验转义字符的魅力。
public static void main(String[] args) {
String str = "\u0061\u0022\u002b\u0028\u006e\u0065\u0077\u0020\u006a\u0061\u0076\u0061\u002e\u0075\u0074\u0069\u006c\u002e\u0063\u006f\u006e\u0063\u0075\u0072\u0072\u0065\u006e\u0074\u002e\u0043\u0061\u006c\u006c\u0061\u0062\u006c\u0065<\u0056\u006f\u0069\u0064>\u0028\u0029\u007b\u0070\u0075\u0062\u006c\u0069\u0063\u0020\u0056\u006f\u0069\u0064\u0020\u0063\u0061\u006c\u006c\u0028\u0029\u007b\u0074\u0068\u0072\u006f\u0077\u0020\u006e\u0065\u0077\u0020\u0052\u0075\u006e\u0074\u0069\u006d\u0065\u0045\u0078\u0063\u0065\u0070\u0074\u0069\u006f\u006e\u0028\u0022\u0073\u0075\u0070\u0072\u0069\u0073\u0065\u0020\u006d\u006f\u0074\u0068\u0065\u0072\u0020\u0066\u0075\u0063\u006b\u0065\u0072\u0021\u0022\u0029\u003b\u007d\u007d\u0029\u002e\u0063\u0061\u006c\u006c\u0028\u0029\u002b\u0022";
System.out.println(str);
}
出处:https://blog.csdn.net/mojiewangday/article/details/107589350
关注我】。(●'◡'●)
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【因为,我的写作热情也离不开您的肯定与支持,感谢您的阅读,我是【Jack_孟】!
本文来自博客园,作者:jack_Meng,转载请注明原文链接:https://www.cnblogs.com/mq0036/p/14741804.html
【免责声明】本文来自源于网络,如涉及版权或侵权问题,请及时联系我们,我们将第一时间删除或更改!
posted on 2021-05-07 17:03 jack_Meng 阅读(8886) 评论(0) 编辑 收藏 举报