上次在一个论坛里面看到一个问题:
/*
*Test.java
*/
import java.io.*;
public class Test{
public static void main(String []args){
System.out.println("c/t de/rf/tg");
System.out.println("h/t/b/bj_-_-K");
}
}
在JDK环境和Eclipse环境中运行大结果不同,而且不好理解是为什么.比较好奇,所以就好好的琢磨了一下.
在用JDK运行时,在默认大DOS窗口中显示地是:
h j_-_-k j_-_-K
h
我没有在Eclipse中运行.
常用的转义符如下:
转义序列 标准形式 功能描述
/n NL 回车换行
/t HT 水平制表符
/b BS 后退一格
/r CR 回车不换行
/f FF 换页
/' ' 单引号
// / 反斜杠
/" " 双引号
/ddd 0ddd 八进制模式
/xddd 0xddd 十六进制模式
/udddd 0xdddd Unicode双字节字符
/n NL 回车换行
/t HT 水平制表符
/b BS 后退一格
/r CR 回车不换行
/f FF 换页
/' ' 单引号
// / 反斜杠
/" " 双引号
/ddd 0ddd 八进制模式
/xddd 0xddd 十六进制模式
/udddd 0xdddd Unicode双字节字符
需要知道的是: 回车是将光标定到当前行的首位,换行,问题在于第二个为什么会这样.而且,如果你把DOS的大小改变后,显示的结果还是会变化,但是你把第二个语句的/t 和 /b 之间加入一个空格,一切和预想的一样了.是转到下一行,但是相对于首位的位置不变!所以第一个输出语句是没有疑问的
具体的结果请自己亲自运行是一下,这里不帖出来了.

1万+

被折叠的 条评论
为什么被折叠?



