java - 打印结果时如何使for循环转到下一行
问题描述
所以我试图得到这句话“永不放弃。今天很艰难,明天会更糟,但后天会阳光明媚!” 删除所有特殊字符,然后像这样打印出来:
绝不
给
向上
今天
是
难的
明天
将要
是
更差
但
这
天
后
明天
将要
是
阳光
目前正在打印:
永不放弃今天很艰难,明天会更糟,但后天会阳光明媚
我尝试添加 System.out.println(); 声明,但它没有像我预期的那样与 return 声明一起工作。
String split(String s){
String tmp = "";
for(i=0; i<s.length(); i++)
if(s.charAt(i)>64 && s.charAt(i)<=122){
tmp = tmp+s.charAt(i);
}
return tmp;
}
解决方案
您没有在两行之间添加换行符。您想将 '\n' 附加到每一行,以便它按您的期望打印:
String split(String s){
String tmp = "";
for(i=0; i<s.length(); i++) {
if(s.charAt(i)>64 && s.charAt(i)<=122){
tmp = tmp+s.charAt(i);
}
if (s.charAt(i) == ' ') {
tmp = tmp+"\n";
}
return tmp;
}
注意:有很多更简单的方法可以做到这一点,但我的更新只是展示了如何改变您当前的解决方案以按预期工作。
正如 Zabuza 所指出的,如果您想确保它在任何操作系统中都能正确打印,您可以System.lineSeparator()
使用"\n"
推荐阅读
- python - 如何从字典中获取 pandas DataFrame?
- java - 如何使用带有撤消功能的备忘录模式
- python - Python 无法打印列表中的特定值
- json - 使用 dart:convert 解析 JSON 时出现 FormatException
- r - 从头开始创建多级数据框
- javascript - 在 Tinymce 中运行当前命令之前运行命令标识符 RemoveFormat
- node.js - 结果性能节点使用 mongo nestJs 或 fastify
- mongodb - 更新多个单列
- ethereum - 签名交易从测试网消失(Kovan & Rinkeby)
- php - Docker 撰写文件未显示 wp-config.php 中的 PHP 错误?