尝试排序字符串数组时插入排序崩溃

时间:2016-02-17 23:21:20

标签: java arrays sorting methods intellij-idea

我有以下程序,我尝试实现插入排序以对字符串数组进行排序:

data A = A
data B = B
deriveSafeCopy 1 'base ''A
deriveSafeCopy 1 'base ''B

当我运行程序时,它完全崩溃了。我在标有星星和一些" NativeMethodAccessorImpl"的行上得到了一个超出范围的例外。错误。我很确定问题出在我的插入排序中,但我无法弄清楚究竟是出于何种原因和原因,因为出界错误对我没有意义。我试图对用户给出的字符串进行排序,并按照字母顺序从a-z开始。

2 个答案:

答案 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];**