Java 如何避免arraylist中的索引out p绑定异常

Java 如何避免arraylist中的索引out p绑定异常,java,arraylist,Java,Arraylist,我试图对arraylist执行一个子字符串,但当列表为空时,我得到的索引超出了绑定异常 这是我的密码 if(interviewTimingToFrom1.size()>0) { for (int i = 0; i < interviewTimingToFrom1.size(); i++) { String str = interviewTimingToFrom1.get(i).substring(0,

我试图对arraylist执行一个子字符串,但当列表为空时,我得到的索引超出了绑定异常 这是我的密码

if(interviewTimingToFrom1.size()>0) {
    for (int i = 0; i < interviewTimingToFrom1.size(); i++) {       
        String str = interviewTimingToFrom1.get(i).substring(0, 
                                interviewTimingToFrom1.get(i).length() - 3);
        subInterviewTiming1.add(str);
    }
}

if (interviewTimingToFrom2.size()>0) {
    for (int i = 0; i < interviewTimingToFrom2.size(); i++) {
        String str = interviewTimingToFrom2.get(i).substring(0,
                               interviewTimingToFrom2.get(i).length() - 3);
        subInterviewTiming2.add(str);
    }
}       
if(interviewTimingToFrom1.size()>0){
对于(int i=0;i0){
对于(int i=0;i

这里当
interviewTimingToFrom2
interviewTimingToFrom1
为空时,我将获取超出范围的索引如何解决此问题尝试此方法,这可能会帮助您避免异常

String str = interviewTimingToFrom2.get(i).substring(0, interviewTimingToFrom2.get(i).length() > 3 ? interviewTimingToFrom2.get(i).length() - 3 : interviewTimingToFrom2.get(i).length());

列表中获取元素时可能不会引发异常,但在其元素上未选中的
子字符串
操作时会引发异常,即
interviewTimingToFrom1.get(i).length()-3
如何消除此问题??