一道java找错题
来源:互联网 发布:数据库维护计划 编辑:程序博客网 时间:2024/05/01 22:35
这里是一道java找错题,看看你能找到几个错:
我首先在android环境下,做了个调用StringReplace类的例子,找到了几个错误:
1,s 第一次使用时没有初始值
2,result 没有初始化
3,replace()函数,没有返回值
4,测试函数中,调用replace()函数时,需要先生成类的对象,才能调用。要不就改成static的。
5,replace()调用,缺一个参数
6,最后的打印,应该是replace()方法的返回值。
在android下调试,改错后如下:
public class StringReplace{ public String replace(String str, String pattern, String replace){ int s = 0; int e=0; StringBuffer result=new StringBuffer(); while((e=str.indexOf(pattern,s))>0){ result.append(str.substring(s,e)); result.append(replace); s=e+pattern.length(); } result.append(str.substring(s)); return result.toString(); } } public void StringReplaceTest(){ String scource = "i love java!"; System.out.println("原来的:"+scource); StringReplace strReplace = new StringReplace(); String str=strReplace.replace(scource,"o","a"); System.out.println("结果:"+str); }
据说是总共有10个错误,那么其他的错误在哪里呢?
我想了想,应该是环境不同,我不是java环境,在android下编译的。那么,就完全按照原题的形式来一遍吧,果然又发现了几个问题:
7,StringReplace 之前,需要有class
8,main()之前,需要有 static void
9,变量名写错:scource 应该改为 source
10,同一个java文件中,只能有一个public声明的class,应该去掉StringReplace前面的public
最后如下:
import java.lang.*; class StringReplace{ public String replace(String str, String pattern, String replace){ int s = 0; int e=0; StringBuffer result=new StringBuffer(); while((e=str.indexOf(pattern,s))>0){ result.append(str.substring(s,e)); result.append(replace); s=e+pattern.length(); } result.append(str.substring(s)); return result.toString(); } } public class StringReplaceTest{ public static void main(String[] args){ String scource = "i love java!"; System.out.println("原来的:"+scource); StringReplace strReplace = new StringReplace(); String str=strReplace.replace(scource,"o","a"); System.out.println("结果:"+str); }}
由于本人Java水平有限,所提供的答案,只是用于参考,对于有疑问的同学,欢迎讨论!
0 0
- 一道java找错题
- 经典java代码找错题
- 找错题
- c语言找错题
- 指针找错题
- 字串倒序-找错题
- 找错
- C++指针找错题 集锦
- 赋值构造函数找错题
- 找错题:最终变量final
- java——大家来找错。
- 一道java笔试题
- 一道java多线程题
- 一道java多线程题
- 一道java笔试题
- 一道java题
- 一道java题
- 一道Java题
- cfg80211 subsystem中的cfg80211_ops
- 告诉你什么是javascript的回调函数
- Docker的安装
- SpringMVC处理静态文件源码分析
- 洛谷 1996——约瑟夫问题(线性数据结构)
- 一道java找错题
- HZAUoj 1015: LCS (LCS变形)
- Inner class 内部类
- Spring MVC与Struts区别
- 198. House Robber -Easy
- oj2395
- JavaSe总结-16- 集合框架(2)
- JavaSe总结-17- 集合框架(3)
- Hibernate和MyBatis区别