java基础之一维数组元素的插入

Giser_往事随风 2017-11-15 03:33:00
1.先对数组进行排序(Arrays.sort(数组名) );

2.对数组扩容:定义一个新数组接收原数组,int [] 新数组名=Arrays.copyOf(原数组名,num.length+1);

3.定义一个index用来保存插入位置的下标;

4. 输入新元素a,用for循环,里面加一个if,判断条件是数组中任一元素>a,找到下标。

5.新建一个for循环,自插入位置元素起(不包含即i>index)向右所有元素都向右移一位(因为之前扩容过一位,最后一个元素为0,所以长度是正好的);

6.将新数组下标为index的元素赋值为插入的元素;

7.输出新数组即可。

实例:

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] scores = { 99, 85, 82, 63, 60 };
Arrays.sort(scores);
int[] scores1 = Arrays.copyOf(scores, scores.length + 1);
int index = 0;
System.out.println("请输入新增成绩:");
int a = sc.nextInt();
for (int i = 0; i < scores1.length; i++) {
if (scores[i] > a) {
index = i;
break;
}
}
for (int i = scores1.length - 1; i > index; i--) {
scores1[i] = scores[i - 1];
}
scores1[index] = a;
System.out.println("插入后的成绩下标是:" + index);
System.out.println("插入后的成绩信息是:");
for (int i : scores1) {
System.out.print(i + "\t");
}
}
...全文
875 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
自由自在_Yu 2017-11-15
  • 打赏
  • 举报
回复
李德胜1995 2017-11-15
  • 打赏
  • 举报
回复
繁华终归落尽 2017-11-15
  • 打赏
  • 举报
回复

50,545

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧