JAVA在线笔试编程时测试结果显示非法越界的解决方法
2017-03-24 22:48
417 查看
今天晚上做了一家公司的在线笔试,笔试要求说可以在本地IDE编写后复制到网页上,但是我在本地运行正确后复制到网页上测试运行时总是说我非法越界。其实是由于在线笔试给了很多数据,和OJ是类似的。所以我们在写的时候循环获取控制台的输入时的判断条件写得不对Scanner提供了一个方法专门用于判断是否还有输入:scanner.hasNext(),
这里有一个例子:
这里有一个例子:
import java.util.*; public class Helli { public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner=new Scanner(System.in); int a,b; String str=""; //str=scanner.nextLine(); while(scanner.hasNext()) { str=scanner.nextLine(); String[] s=new String[2]; s=str.split(","); a=Integer.parseInt(s[0]); b=Integer.parseInt(s[1]); if(a<1||a>7000||b<1||b>7000) { System.out.println(-1); } else { char[] s1=new char[5]; char[] s2=new char[5]; int i,j=0; for(i=0;i<s[0].length();i++) { s1[i]=s[0].charAt(s[0].length()-i-1); } for(j=0;j<s[1].length();j++) { s2[j]=s[1].charAt(s[1].length()-j-1); } String str1=""; String str2=""; for(int x=0;x<i;x++) { str1+=s1[x]; } for(int y=0;y<j;y++) { str2+=s2[y]; } a=Integer.parseInt(str1); b=Integer.parseInt(str2); System.out.println(a+b); } //str=scanner.nextLine(); } System.out.println("yes"); } }
相关文章推荐
- Spring注解编程时用junit测试时,显示jdK版本过低问题,更改版本后仍然不行的解决方法
- Skype在线但是在ie和火狐上测试zencart时候无法都显示在线解决方法
- 64位 Fedora 11 sun java 中文字体显示解决方法
- windows 2003上安装测试管理工具TestDirector 8.0,访问页面显示HTML代码的解决方法
- win8使用every'thing无法显示搜索结果的解决方法
- PHP连接MySQL查询结果中文显示乱码解决方法
- java new date 结果与操作系统时间相差8小时处理解决方法
- 执行Android JUnit测试出现java.net.SocketException: Permission denied的解决方法
- 解决高德地图在线API不支持对应的方法回调返回结果的问题
- win8使用every'thing无法显示搜索结果的解决方法
- Java开发,AWT控件的中文显示成乱码的解决方法
- Aplix VM安装Java应用在main menu上不能显示自己的图标,而是显示一朵小花的解决方法
- <img src="中文文件名" /> 无法显示图片,图片名改成英文就可以显示;试了下在电脑桌面写了个HTML测试下,可以显示中文名称的图片,解决方法
- 解决java网络编程IPv6带来的问题方法
- 安装MANTIS测试环境后,解决页面显示警告时区设置不正常的方法
- java.lang.OutOfMemoryError: Java heap space 解决方法转测试可用
- Ubuntu/Debian下JAVA 中文/图片中文字体乱码显示问题解决方法
- Java基本功练习四(用方法的思想编程举例,如显示当前时间、检验信用卡号合法性与类别、掷骰子游戏等)
- Eclipse下导出java程序可执行的jar包图片无法显示问题的一种解决方法
- PHP连接MySQL查询结果中文显示乱码解决方法