返回位于给定的基于一的行和列索引处的该矩阵的条目。如果行或列不是1或2,则引发异常。
public double get(int row, int col){
if (row != 1 || row != 2){
throw IndexOutOfBoundsException("Row not valid");
}
if (col != 1 || col != 2){
throw IndexOutOfBoundException("Column not valid");
}
return data[row - 1][col - 1];
}
这是我的方法的代码,但即使我使用参数row=1和col=2调用该方法;它显示了IndexOutOfBoundsException。有没有办法解决这个问题?
你还应该告诉我们什么是数据。也许错误来自最后一行?
假设矩阵data
足够大,尝试使用
public double get(int row, int col) {
if (row != 1 && row != 2) {
throw new IndexOutOfBoundsException("Row not valid");
}
if (col != 1 && col != 2) {
throw new IndexOutOfBoundException("Column not valid");
}
return data[row - 1][col - 1];
}
而不是链接一系列的条件,你也可以考虑为每个有效的列和行定义一个集合:
private static final Set<Integer> VALID_ROWS_TO_GET = Set.of(1, 2);
private static final Set<Integer> VALID_COLS_TO_GET = Set.of(1, 2);
...
public double get(int row, int col) {
if (!VALID_ROWS_TO_GET.contains(row)) {
throw new IndexOutOfBoundsException("Row not valid");
}
if (!VALID_COLS_TO_GET.contains(col)) {
throw new IndexOutOfBoundsException("Column not valid");
}
return data[row - 1][col - 1];
}
返回位于给定的基于一的行和列索引处的该矩阵的条目。如果行或列不是1或2,则引发异常。 这是我的方法的代码,但即使我使用参数row=1和col=2调用该方法;它显示了IndexOutOfBoundsException。有没有办法解决这个问题?
问题内容: 我正在运行一个简单的Calculator应用程序来学习Java的异常处理。我设置了两个要处理的异常:InputMismatchException和ArithmeticException,用于除以零。 ArithmeticException得到处理,并且do-while循环继续。但是在捕获InputMismatchException之后,执行将终止而不是继续循环。 码: 输出: 预期:在
我编写了一个简单的注释和一个AnnotationProcessor来处理注释。 注释只有一个值:它应该是现有接口(带有包)的名称。 注释处理器应该检索注释的值,检索接口的类对象,最后应该打印接口中声明的所有方法。 例:这是我的注解 这是带注释的类: 我的处理器看起来像 现在,如果我配置一个像java.lang.CharSequence这样的接口作为MyAnnoation的接口名称,这个工作原理很好
我安装了Maven 3.2.5并在我的项目目录中执行了。显示以下错误: 插件org.apache.maven.plugins:maven-resources-plugin:2.6或其依赖项无法解析:无法读取org.apache.maven的工件描述符。plugins:maven-resources-plugin:jar:2.6:无法将工件org.apache.maven.plugins:maven
所以我用这个mock(potatoConsumer)订阅,rxJava调用了“accept”,mockito将其标记为交互,但mockito认为这个交互不是我所期望的,为什么? 图书馆的版本使用了她: 一些由powermock模拟的字段在“验证”时失败,但由mockito模拟的字段不是 Mockito不能模拟未打开的字段,没有,但Mockito与Powermock maker inline冲突 P
问题内容: 我们知道捕获异常非常昂贵。但是,即使从不抛出异常,在Java中使用try-catch块是否也很昂贵? 问题答案: 几乎没有任何花销。代码的元数据不是在运行时进行设置,而是在编译时进行结构化,这样,当引发异常时,它现在执行相对昂贵的操作,即遍历堆栈并查看是否存在任何可捕获此异常的块。例外。从外行的角度来看,它可能也是自由的。它实际上是在抛出导致你付出代价的异常-但是,除非你抛出数百或数千