您的位置:首页 > 编程语言 > Java开发

18.Java转义字符

2017-10-18 11:10 190 查看
18.Java转义字符

转载请保留原文链接: http://dashidan.com/article/java/basic/18.html

所有的ASCII码都可以用”\”加数字(一般是8进制数字)来表示. Java语言中定义了一些字母前加”\”来表示特殊含义的字符, 如\0,\t,\n等, 称为转义字符(Escape Character).

① 斜线与反斜线

/ 斜线(slash), 又称为forward slash (前斜线), 原本是标点符号.

起源于古罗马,中世纪时用作逗号(而当时的双斜线//是被当作连接号的,后来演化成等号=). Linux系统文件路径使用.

\ 反斜线(backslash), Windows系统文件路径, 程序编码转义, Unicode编码等都使用.

② 转义字符表

斜杠:”/” 与 反斜杠:”\” ,此处不可互换

Java中转义字符, 用单引号标识, 是
char
类型.

1.八进制转义序列: \ + 1到3位5数字;范围’\000’~’\377’

\0:空字符


2.Unicode转义字符:\u + 四个十六进制数字;0~65535

\u0000:空字符


常用Unicode字符对照表

点的转义:. -> u002E

美元符号的转义:$ -> u0024

乘方符号的转义:^ -> u005E

左大括号的转义:{ -> u007B

左方括号的转义:[ -> u005B

左圆括号的转义:( -> u0028

竖线的转义:| -> u007C

右圆括号的转义:) -> u0029

星号的转义:* -> u002A

加号的转义:+ -> u002B

问号的转义:? -> u003F

反斜杠的转义: -> u005C

3.特殊字符

\” : 双引号

\’ : 单引号

\\ : 反斜线

\’ : 单引号

4.控制字符

\r 回车

\n 换行

\f 走纸换页

\t 横向跳格

\b 退格

转义字符表
转义字符意义ASCII码值(十进制)
\b退格(BS),将当前位置移到前一列8
\f换页(FF),将当前位置移到下页开头12
\n换行(LF) ,将当前位置移到下一行开头10
\r回车(CR) ,将当前位置移到本行开头13
\t水平制表(HT) (跳到下一个TAB位置)9
\\代表一个反斜线字符”\’92
\’代表一个单引号(撇号)字符39
\”代表一个双引号字符34
\0空字符(NULL)0
\0001到3位八进制数所代表的任意字符三位八进制,范围’\000’~’\377’
\u0000Unicode转义字符:\u + 四个十六进制数字, \u0000:空字符 四个十六进制数字;0~65535


在网上其他的一些资料中提到了\?和\x转义字符.

然而Java中并没有这两个转义字符.\x`为C++语言中的16进制转义字符.

附带真相的代码:

package com.dashidan.lesson17;

/**
* 大屎蛋教程网-dashidan.com
* <p>
* Java教程基础篇: 17.Java转义字符
* 转义字符/?和/x
*/
public class Demo2 {
public static void main(String[] args) {
/** 定义以下变量都是错误的*/
//        char c = '\?';
//        char f = '\x01';
}
}


示例代码:

package com.dashidan.lesson17;

/**
* 大屎蛋教程网-dashidan.com
* <p>
* Java教程基础篇: 17.Java转义字符
*/
public class Demo1 {
public static void main(String[] args) {
char a = '\\';
char b = '\"';
/** 这个会报错,Java中无法转义\? */
char d = '\'';
/** 8进制整数*/
char e = '\100';
/** unicode变化转义*/
char g = '\u1111';
System.out.println("a: " + a);
System.out.println("b: " + b);
System.out.println("d: " + d);
System.out.println("e: " + e);
System.out.println("g: " + g);
}
}


输出:

a: \
b: "
d: '
e: @
g: ᄑ


③ 相关文章

Java教程从入门到精通
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息