java编程问题,急急急!输入一个字符串,如果字符串中存在字母"a"的次数大于1,则只保留第一个"a",
关注:244 答案:4 mip版
解决时间 2021-01-25 14:04
提问者帆佈素顔钕漢囝
2021-01-25 08:11
输入一个字符串,如果字符串中存在字母"a"的次数大于1,则只保留第一个"a",将其余的"a"均替换为"b"。
比如:输入 s="abcde" 则输出:s="abcd"
输入 s="abaae" 则输出:s="abbbe"
最佳答案
二级知识专家若爱会伤
2021-01-25 09:27
public static void main(String[] args) {
boolean hasA = false;
String result = "";
Scanner x=new Scanner(System.in);
System.out.print("请输入字符串:");
Scanner in=new Scanner(System.in);
String str=in.next();
for(int i=0;i
char temp = str.charAt(i);
if(temp=='a') {
if(!hasA) {
hasA=true;
result += "a";
} else {
result += "b";
}
} else {
result += String.valueOf(temp);
}
}
System.out.println("输出字符串为:"+result);
}
测试结果:
请输入字符串:abcdef
输出字符串为:abcdef
请输入字符串:aaabg31a
输出字符串为:abbbg31b
全部回答
1楼口袋里的自由
2021-01-25 12:48
public static void main(String[] args){
String str = "abaae";
boolean val = false;
char[] c = str.toCharArray();
for(int i=0; i
if("a".equals(c[i]+"") && val){
c[i]='b';
}else{
val = true;
continue;
}
}
System.out.print(new String(c));
}
2楼風聲提筆
2021-01-25 11:20
public class StringTest {
public static void main(String[] args) {
String s="abaaac";
s=s.replaceFirst("a", " ");
s=s.replaceAll("a", "b");
s=s.replaceFirst(" ", "a");
System.out.println(s);
}
}
这里面需要注意,字符串不能有空格。
s=s.replaceFirst("a", " ");
将第一个出现的a替换了,替换的这个字符串必须啊在s中是没有出现的。
这样写起来简单一些,但是有局限性。
3楼对温柔懂得不多
2021-01-25 11:00
用字符串indexof函数判断
再看看别人怎么说的。
我要举报
如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
点此我要举报以上信息!
推荐资讯
大家都在看