java基础(第七章课后作业)05
1 package shuzu; 2 3 import java.util.Scanner; 4 5 public class ZuoYe05 { 6 7 public static void main(String[] args) { 8 Scanner meng00=new Scanner(System.in); 9 String[]yinyue=new String[]{"Island","Ocean","Pretty","Sun"};//定义插入前一个数组 10 String[]yinyue2= new String[yinyue.length+1]; //定义一个要插入的新数组,在插入前的数组长度+1长度 11 int index=0; //数组下标 12 String xin =""; //Srting类型新插入数组 13 System.out.println("插入前的数组为:"); 14 for (int i = 0; i < yinyue.length; i++) { //插入前的数组,我把定义的原有数组赋值给了新数组输出。这个时候新数组比原有数组长度多1个下标 15 yinyue2[i]=yinyue[i]; //赋值数组 16 System.out.print(yinyue2[i]+"\t"); 17 } 18 System.out.println("\n请输入新的歌名:"); 19 xin=meng00.next(); //要插入的新的歌名单词 20 for (int i = 0; i < yinyue.length; i++) { 21 if (yinyue2[i].compareToIgnoreCase(xin)>0) { //书上提供的字符串比较大小的方法,找到插入的位置,解释看书第165页。 22 index=i; //附加:我也是按照书打的,不明白!!!!! 23 break; //这么长的单词 sorry!!我记不住!记不住!! 24 }else { 25 index=yinyue2.length-1; 26 } 27 } 28 29 for(int i=yinyue2.length-1;i>index;i--){ //可以解释成元素后移吗? 30 yinyue2[i]=yinyue2[i-1]; //是的 !可以。 31 } 32 33 yinyue2[index]=xin; //输入的歌曲名 赋值给比较好的数组下标找到新插入歌曲名称的下标位置 34 System.out.print("插入后的数组:"); 35 for(int i=0;i<yinyue2.length;i++){ //输出插入后数组 36 System.out.print(yinyue2[i]+" "); 37 } 38 } 39 40 } 41 /*String[] nummusics=new String[musics.length+1]; 42 int index=0; 43 String music=""; 44 System.out.print("插入前的数组:"); 45 for(int i=0;i<musics.length;i++){ 46 nummusics[i]=musics[i];// 47 } 48 for(int i=0;i<musics.length;i++){// 49 System.out.print(musics[i]+" ");// 50 } 51 System.out.println(""); 52 System.out.print("请输入新的单词"); 53 music=meng00.nextLine(); 54 System.out.print("插入前新单词的下标:"); 55 for(int i=0;i<nummusics.length;i++){ 56 if(nummusics[i].compareToIgnoreCase(music)>0){ 57 index=i; 58 break; 59 } 60 } 61 System.out.println(index); 62 for(int i=nummusics.length-1;i>index;i--){ 63 nummusics[i]=nummusics[i-1]; 64 } 65 nummusics[index]=music; 66 System.out.print("插入后的数组:"); 67 for(int i=0;i<nummusics.length;i++){ 68 System.out.print(nummusics[i]+" "); 69 } 70 */