18.Java转义字符

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教程从入门到精通

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值