java代码中的IllegalArgumentException
我已经为这个问题编写了一个代码: 三个数字A、B和C是输入。编写一个程序来查找 在三个数字中排名第二。输入 第一行包含一个整数T,即测试用例的总数。然后 在T行之后,每行包含三个整数A、B和C。输出 显示A、B和C中的第二大约束。约束 一,≤ T≤ 1000 1 ≤ A、 B,C≤ 1000000例 输入: 预期产出: 我得到了一个非法的argumentexception。我无法理解如何删除该异常:java代码中的IllegalArgumentException,java,runtimeexception,Java,Runtimeexception,我已经为这个问题编写了一个代码: 三个数字A、B和C是输入。编写一个程序来查找 在三个数字中排名第二。输入 第一行包含一个整数T,即测试用例的总数。然后 在T行之后,每行包含三个整数A、B和C。输出 显示A、B和C中的第二大约束。约束 一,≤ T≤ 1000 1 ≤ A、 B,C≤ 1000000例 输入: 预期产出: 我得到了一个非法的argumentexception。我无法理解如何删除该异常: import java.util.*; import java.lang.*; import
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class trial2
{
public static void main (String[] args) throws IOException
{
Scanner in = new Scanner(System.in);
int a,b,c;
int ctr=1;
int t=in.nextInt();
while(ctr<=t){
a=in.nextInt();
b=in.nextInt();
c=in.nextInt();
if((a>b&&b>c)||(a<b&&b<c))
System.out.println(b);
else if((b<a&&a<c)||(b>a&&a>c))
System.out.println(a);
else if((a>c&&c>b)||(a<c&&c<b))
System.out.println(c);
ctr++;}
}
}
import java.util.*;
导入java.lang.*;
导入java.io.*;
/*只有当类是公共的时,类的名称才必须是“Main”*/
第二类
{
公共静态void main(字符串[]args)引发IOException
{
扫描仪输入=新扫描仪(系统输入);
INTA、b、c;
int ctr=1;
int t=in.nextInt();
而(ctrb&&b>c)| |(ab)| | |(撇开堆栈跟踪。我没让你@shmosel不明白为什么你要在似乎只有一行输入的情况下执行多个readLine
?@shmosel-他没有打印堆栈跟踪,只是错误-ho humOne of the Long.parseLong(buf.readLine())引起异常的是,您只有一行,但是您正在读取多于一行。此外,考虑使用扫描仪代替BuffErdRead。扫描仪具有NestTin()的方法。您可以使用它来获取堆栈跟踪后的下一个整数输入。我没有让您@shmosel不理解为什么在似乎只有一行输入的情况下要执行多个readLine
此外,考虑使用扫描仪而不是BuffReDeRead。扫描仪有NestTin()这样的方法,您可以使用它来获得下一个整数输入。
120
312
10
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class trial2
{
public static void main (String[] args) throws IOException
{
Scanner in = new Scanner(System.in);
int a,b,c;
int ctr=1;
int t=in.nextInt();
while(ctr<=t){
a=in.nextInt();
b=in.nextInt();
c=in.nextInt();
if((a>b&&b>c)||(a<b&&b<c))
System.out.println(b);
else if((b<a&&a<c)||(b>a&&a>c))
System.out.println(a);
else if((a>c&&c>b)||(a<c&&c<b))
System.out.println(c);
ctr++;}
}
}