Windows系统下Java \r,\n,\r\n的区别分析闲笔

本文主要探讨Windows系统中Java处理换行符` `, ` `, ` `的区别,通过代码示例展示如何使用`replace`和`replaceAll`进行替换操作,以实现字符串的统一处理。" 113319728,10295192,Spring Boot 多环境配置实战,"['Spring框架', 'Spring Boot', '配置管理', '开发环境', '部署环境']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录Java中遇到的\r,\n,\r\n(仅限于Windows系统)

首先
\r: 就是回到行首,
\n: 就是到下一行

即:前者使光标回到行首,后者使光标下移一格。

直接上代码
		System.out.println("aaaa\r\nbbbb");
		System.out.println("cccc\rdddd");
        System.out.println("eeee\nffff");
        System.out.println("gggg"+"\r|\n"+"hhhh");
结果是:

在这里插入图片描述

其中“|”是因为遇到过一个**replaceAll("\r|\n","-");**所以想试一下有什么效果,原来发现没什么用

之前想的结果应该是:
				aaaa
				bbbb
				cccc
				dddd
				eeee
				ffff
				gggg
				hhhh
结果实际测试了之后还是很打脸的,所以说任何东西没有测试过不能妄断言论
解释
\r:就是return 回到本行行首,就会把这一行以前输出覆盖掉
\n:就是换行+回车,把光标先移到下一行>>>然后再换到行首>>>也就是下一行的行首		

有的编辑器只认 \r\n 比如记事本,有的编辑器则两个都认,所以想通用,最好使用 \r\n

下面是对字符串使用replacereplaceAll将\r、\n、\r\n 替换为"-"分隔符

上代码

		String str = "aaaa\r\nbbbb";
        String str1 = str.replace("\r\n","-");
        System.out.println(str1);
        String str2 = str.replaceAll("\r|\n","-");
        System.out.println(str2);
        String[] str3 = str2.split("-");
        for (int i=0;i<str3.length;i++){
            System.out.println(i+"="+str3[i]);
        }
        String str4 = str.replaceAll("\r\n","-");
        System.out.println(str4);
        String[] str5 = str4.split("-");
        for (int i=0;i<str5.length;i++){
            System.out.println(i+"="+str5[i]);
        }
结果是

在这里插入图片描述

replace的参数是字符串或者字符,既可以支持字符串的替换也可以支持字符的替换
replaceAll的参数是正则表达式或者是字符

相同点
都是全部替换,即把源字符串中的某一字符或者字符串全部或转换成指定的字符或者字符串

如果只想转换第一次出现的,可以使用replaceFirst()这个方法也是基于正则表达式的替换,但是于replaceAll不同的是,只替换第一次
出现的字符串,另外如果replaceAll()和replaceFirst()所用的参数不是基于正则表达式的,则于replace()替换字符串的效果是一样的即
这两种也支持字符串的操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值