我有以下程序,我尝试实现插入排序以对字符串数组进行排序:
data A = A
data B = B
deriveSafeCopy 1 'base ''A
deriveSafeCopy 1 'base ''B
当我运行程序时,它完全崩溃了。我在标有星星和一些" NativeMethodAccessorImpl"的行上得到了一个超出范围的例外。错误。我很确定问题出在我的插入排序中,但我无法弄清楚究竟是出于何种原因和原因,因为出界错误对我没有意义。我试图对用户给出的字符串进行排序,并按照字母顺序从a-z开始。
答案 0 :(得分:1)
尝试编写这样的方法:
public static void insert(String[] a) {
String temp = a[a.length-1];
int j = a.length - 1;
答案 1 :(得分:1)
您收到错误,因为大小总是比数组中的元素数多1。因此,您应该从大小
中减去1下面
**insert(a, arraySize - 1);**
或在这里
int j = size - 1;
**String temp = a[j];**