下面的实现是否正确?
输入: Oldrecords ( GameRecord对象数组)和newRecords (GameRecord)
我将检查oldRecords数组中的newRecord值。如果不存在,并且旧记录数组的长度小于10,我会将newRecord添加到更新后的数组中。
当添加新记录时,我得到了异常的数组绑定。
if (size < 10){
int length = size + 1;
updatedRecords = new GameRecord[length];
System.arraycopy(oldRecords, 0, updatedRecords, 0, size);
updatedRecords[length]=newGameRecord(newRecord.getName(),newRecord.getLevel(),newRecord.getScore());
}发布于 2015-05-20 19:13:15
把它放到size,而不是length。
if (size < 10){
int length = size + 1;
updatedRecords = new GameRecord[length];
System.arraycopy(oldRecords, 0, updatedRecords, 0, size);
updatedRecords[size]=newGameRecord(newRecord.getName(),newRecord.getLevel(),newRecord.getScore());
} 发布于 2015-05-20 19:14:27
我看到的可能性是,oldRecords数组的大小可能小于' size‘变量的值。完整的堆栈跟踪可以提供更多详细信息
https://stackoverflow.com/questions/30347875
复制相似问题