我正在尝试编写一段代码,将句点“.”后的第一个字母大写
例如:
String str = "abcdef. ghijk, mlnopqrs. tuv .................."
//the "............" means the line is still going on.
输出应该是:
"Abcdef. Ghijk, mlnopqrs. Tuv ................."
注意:仅使用基本方法
字符串:charAt
, indexOf
, length
, substring
, toUpperCase
这意味着没有Stringbuilder
,没有数组,没有分割...等等。我在这个网站上找到的其他解决方案也涉及这些内容。
编辑:非常感谢大家的快速回复。刚刚看到罗宾·克拉尔的编辑。是的,我忘了添加我的代码。 我的代码看起来与mau的回复一模一样。但这段代码最终出现了这个异常
java.lang.StringIndexOutOfBoundsException: String index out of range
从这里我不知道如何解决这个问题 -.-
最佳答案
我可以帮助你解决逻辑部分:
- 查找直到“.”的子字符串
- 将子字符串第 0 个位置的 charAt 改为大写。
- 循环 1 到 2,直到不再有“.”。出现在字符串中
- 连接子字符串
希望这有帮助
关于java - 第一个字母大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19578486/