咱们先来看几个例子:linux
例1:windows
public class Test {ide
public static void main(String[] args) {spa
String s = "'sds gdasda" + "\n" + "edaeafd'";
System.out.println("转换前:"+s);unix
s = s.replaceAll("\r|\n", "");code
System.out.println("转换后:"+s);
}
}
输出结果:orm
转换前:'sds gdasda
edaeafd'
转换后:'sds gdasdaedaeafd'ci
在看一个实例:字符串
例2:it
System.out.println("\\r 输出:"+"abc"+"\r"+"abc");
System.out.println("\\n输出:"+"abc"+"\n"+"abc");
以上两句在控制台输出的格式是同样的:
\r输出:abc
abc
\r输出:abc
abc
那么是否是说\r与\n是否是相等的呢?
例3:
public class Test {
public static void main(String[] args) {
String s = "'sds gdasda" + "\n" + "edaeafd'";
System.out.println("转换前:"+s);
s = s.replaceAll("\r", "");
System.out.println("转换后:"+s);
}
}
转换前:'sds gdasda
edaeafd'
转换后:'sds gdasda
edaeafd'
输出结果能够看出\r和\n啊hi不相等的。
那么他们有什么区别呢?
例4:
public class Test {
public static void main(String[] args) {
String s = "'sds gdasda" + "\n\r" + "edaeafd'";
System.out.println("转换前:"+s);
s = s.replaceAll("\r|\n", "");
System.out.println("转换后:"+s);
}
}
输出结果:
转换前:'sds gdasda
edaeafd'
转换后:'sds gdasdaedaeafd'
能够看出\r表示回车,\n表示另起一行(\r 叫回车 Carriage Return ;\n 叫新行 New Line)
咱们能够在所一个实验:
例5:
public class Test {
public static void main(String[] args) {
String s = "'sds gdasda" + "\r\n" + "edaeafd'";
System.out.println("转换前:"+s);
s = s.replaceAll("\r|\n", "");
System.out.println("转换后:"+s);
}
}
输出结果:
转换前:'sds gdasda
edaeafd'
转换后:'sds gdasdaedaeafd'
在
例4到例5中咱们只是把字符串s的\n\r的位置改变成了\r\n,却发现例4输出结果中多了一行空格。
至于为何例4和例5输出会有这样的区别也就是\r\n与\n\r的区别,这是网上的一个比较好的答案:
关于\t 它至关于按了一下Tab键。