Java中的“反斜杠魔法”:转义字符全掌握
小伙伴们我们又见面啦,今天我们来学习一下Java语言中的转义字符。作为萌新的我,初学转义字符的时候就被 \n、\t 这些符号搞的有点晕——不就是输出个换行和空格嘛,为什么要用反斜杠?而且一用这么多转义字符全都用上了。但是小伙伴们不要担心,要相信熟能生巧,在反复的敲代码过程中慢慢理解它们的逻辑,在不断地练习中学会如何合理的运用它们。
那么首先请小伙伴们来认识一下Java中主要的7类转义字符

白弟为大家做一下简单的解释:
1. \t:光看表中的功能有些小伙伴可能看的不是很明白,其实可以简单地理解为“自动对齐的空格”,比如:如果要打印下面一行代码,你认为会打印出什么?
System.out.println("北京\t天津\t上海");
北京 天津 上海
没错,以空格将三个地名分开打印
注意:不同编译软件的控制台设置的制表位存在不同,所以打印出的效果存在差别,不过统一的是它们都实现了对其功能
2. \n:这个将会是我们学Java过程中最常用的转移字符之一,其功能就是换行,如:
System.out.println("jack\nsmith\nmary");
jack
smith
marry
每个人名各占一行
3. \\:第一个 \ 代表转义,能够将第二个 \ 的转义功能无效化,使其打印出一个 "\",如:
System.out.println("C:\\windows\\System32\\cmd.exe");
C:\windows\System32\cmd.exe
4. \\\\:与 \\ 道理相似,第一个 \ 和第三个 \ 分别将第二个 \ 和第四个 \ 的转义功能无效化,从而打印出一个 "\\",如:
System.out.println("C:\\\\windows\\\\System32\\\\cmd.exe");
C:\\windows\\System32\\cmd.exe
5. \":其中 \ 使双引号失去“字符串边界”的特殊含义,变成普通的 " 打印出来,如:
System.out.println("人人说:\"要好好学习java,有前途\"");
人人说:"要好好学习java,有前途"
为了防止计算机错将内部双引号识别为字符串边界,特地用 \ 将其功能无效化
6. \':其中 \ 使单引号失去“字符串边界”的特殊含义,变成普通的 ' 打印出来,如:
System.out.println("人人说:\'要好好学习java,有前途\'");
人人说:'要好好学习java,有前途'
为了防止计算机错将内部单引号识别为字符边界,特地用 \ 将其功能无效化
这里区分一下单引号和双引号功能的区别:
| 符号 | 作用边界 | 包裹的内容 |
|---|---|---|
" |
字符串边界 | 字符串(String),可以包含0个或多个字符 |
' |
字符边界 | 字符(char),只能包含1个字符 |
了解清它们各自的作用边界,千万不要随意混用!
7. \r:请注意这个回车可不是我们敲代码时用的 enter 键,它的实际功能是不换行的,刚学的时候我是就误认为是换行而出错。接下来我举个实例,进行详细解读:
Sytem.out.println("我是一个小白\r学习");
解读:
(1). 先看 \r 前面的部分,会输出:我是一个小白
(2). 再看 \r ,这时它的作用就是将光标定位在输出当前行的第一个字符(也就是“我”),用 \r 后面的字符去替换前面的字符,结合上述代码,\r 后 “学”“习”是两个字符,分别替换了“我”“是”
(3). 最终输出:学习一个小白
学习一个小白
学习了7类转义字符,接下来考验学习成果的时候到了
public class ChangeChar {
public static void main(String[] args) {
// \t : 一个制表位,实现对齐功能
System.out.println("北京\t南京\t重庆");
// \n : 换行符
System.out.println("张三\n李四\n王五");
// \\ : 一个\
System.out.println("我努力\\我自豪\\我进步");
// \\\\ : 两个\
System.out.println("我努力\\\\我自豪\\\\我进步");
// \" : 一个"
System.out.println("小白说:\"要好好学习java,有前途\"");
// \' : 一个'
System.out.println("小白说:\'要好好学习java,有前途\'");
// \r : 一个回车
System.out.println("明天更加灿烂\r温暖阳光");
}
}
类名可自定义,取 ChangeChar(转义字符)为类名很贴切代码内容
此段代码汇集了7类转义字符知识点,相信小伙伴们都能答出正确输出结果!

好啦,以上就是白弟对转义字符知识点的分享啦,如果有不完善的地方,还请前辈们指点。Java学习之路道阻且长,愿你我携手共进,行稳致远。
更多推荐



所有评论(0)