今天在敲DRP项目的时候,在做树形结构输出的时候遇到了这个概念,所以就查了一下。
在java中反斜杠\代表的含义是转义字符; 指在其后面跟的字符是具有特殊含义的,它们在字符串中组成了一个用于编译器识别的标记,
它用于描述一些无法用单个字符描述的特殊符号,如换行符,退格符,制表符等等(他们在window中分别是\n,\b,\t)。
当编译器读到这个标记的时候,它就知道下一个字符是转义字符,而不是普通的字符, 它会依据转义字符的含义做操作,而不是直接的使用原字符的含义操作。
当遇到一些java语法中被占用的特殊字符的时候,要想原样的输出,就需要在这些特殊的字符前面加入反斜杠。比如反斜杠本身,单引号,双引号,小括号等,因为语法已经占用,所以要想原样的输出,只有在前面在加一个反斜杠。这点在读取windows中文件的字符串路径时体现的特别明显,要想路径有效就要在单个反斜杠前在加一个 反斜杠用于转义 ;
\叫做转义字符,用于描述一些无法用单个字符描述的特殊符号
在转义字符后面跟上字母或者符号后。会产生新的意义
如\n:换行 \t:制表符 \\:代表在文件中的\
\r:回车 \'单引号 \"双引号
举个例子:
在HTML中这句话
<img alt="展开" style="cursor:hand;" onClick="display('2');" id="img2" src="../images/plus.gif">
如果在java类中就要这样写:
sbTreeHTML.append("<img alt=\"展开\" style=\"cursor:hand;\" onClick=\"display('" + rs.getInt("id") + "');\" id=\"img" + rs.getInt("id") + "\" src=\"../images/plus.gif\">");
因为双引号在java类中代表定义的常数,而HTML中的双引号不是这个意思所以 如果想在java中表示HTML中的意思就需要使用转义字符。
中间有一部分是百度来了,为了大家更好的理解所以整理了一下。