为了账号安全,请及时绑定邮箱和手机立即绑定

Java有关数组java.lang.ArrayIndexOutOfBoundsException 异常的问题

Java有关数组java.lang.ArrayIndexOutOfBoundsException 异常的问题

陪伴而非守候 2018-12-06 17:25:01
程序是实现一个纯字母字符串排序,如:sort("acb") 返回"abc".问题是:  当测试字符串为“acb”时可以正确显示排序结果,  当测试字符串为”dbca“时却显示:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1  at Sort.sort1(Sort.java:38)  at Sort.main(Sort.java:9)请大虾帮忙看看怎么出错了!现在,源代码如下: 1 import java.util.Scanner; 2 public class Sort 3 { 4 public static void main(String[] args) 5 { 6 Scanner sca = new Scanner(System.in); 7 System.out.println("请输入一个字符串:"); 8 String s = sca.next(); 9 System.out.println("排序前的字符串为: " + s + "\n" + 10 "排序后的字符串为: " + sort1(s)); 11 12 } 13 14 public static String sort1(String s){ 15 //插入排序 16 char[] array = s.toCharArray(); 17 for(int i = 1;i < s.length();i++){ 18 char temp = array[i]; 19 int j = i - 1; 20 //大的字符后移操作 21 while(array[j] > temp && j >= 0){ 22 array[j + 1] = array[j]; 23 j--; 24 } 25 //插入操作 26 array[j + 1] = temp; 27 } 28 29 StringBuffer ss = new StringBuffer(); 30 ss.append(array); 31 return ss.toString(); 32 } 33 }    
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 776 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号