在java中,如何以一种简单的方式获取字符串前缀上的所有出现字符?
我有这样一个字符串:'0010'
如何获得该示例字符串的前两个零。这里的规则是,我有一个包含字符的变量。然后我需要查看字符串,如果字符串的第一个字符与变量值相同。我需要保留它,然后如果第二个字符串再次匹配,则连接它,依此类推。如果字符串的第一个字符与变量值不匹配,则它将不会存储,也不会再次查看前一个字符
虽然我已经有了解决方案,但我使用了大约10行代码来实现这一点
这是我的密码:
String start = "0001";
String concatVal = "";
char prefix = '0';
for(int i = 0; i < start.length(); i++){
if(start.charAt(i) == prefix){
concatVal += prefix;
} else {
break;
}
}
System.out.println(concatVal);
//Output
000
如果有更简单的方法来实现这一点,请让我知道。谢谢
# 1 楼答案
# 2 楼答案
看起来不错,一个可能的改变是
# 3 楼答案
你的代码已经很简单了。英文描述不短,所以别担心。稍加修改,你会发现:
这个定义只有四行:
与你的描述相比,这真的很短
# 4 楼答案
可以从原始字符串中提取结果
# 5 楼答案
您可以在不逐字符构建结果字符串的情况下执行此操作。而是寻找可能匹配的长度,然后从原始字符串中剪切