【问题标题】:Set a parameter based on an exception?根据异常设置参数?
【发布时间】:2014-11-18 09:14:52
【问题描述】:

我有一个如下的 FOR 循环:

for (int i=0; i<DataTimes.length; i++) {

    int resultCounter = 0;
    int currentTime = DataTimes[i];
    int nextTime = DataTimes[i+1];
 }

我没有包含整个代码。这个数组有超过 1700 个条目。我相信,当我到达数组“DataTimes[i+1]”的末尾时,我的 Android 应用程序崩溃了,因为该条目将不存在。

我该如何解释呢?

类似于 ArrayOutOfBound 异常将 nextTime 设置为零。

谢谢

【问题讨论】:

    标签: java android arrays exception exception-handling


    【解决方案1】:

    换行:

    int nextTime = DataTimes[i+1];
    

    收件人:

    int nextTime = (i + 1) < DataTimes.length ? DataTimes[i+1] : 0;
    

    【讨论】:

      【解决方案2】:

      我一定是错误的。当 i=DataTimes.length-1 时,DataTimes[i] 是数组中的最后一个元素。这时候 i+1 真的是越界了。

      【讨论】:

        猜你喜欢
        • 2015-07-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-30
        • 1970-01-01
        • 2011-01-28
        • 2019-07-31
        相关资源
        最近更新 更多