需求分析:
需求:定义一个类,对数组中的数据进行管理(增删改查)
方法:
插入数据:public int[ ] insertData() { }
显示所有数据 public void showData(int[ ] a, int length) { }
在指定位置处插入数据 public void insertAtArray(int[ ] a,int n,int k) { }
查询能被3整除的数据 public void divThree(int [ ] a) { }
代码如下:
package com.dodoke.datamanager;
import java.util.Scanner;
public class DataManager {
public int[] insertData() {
//先定义一个长度为10的整型数组
int[] arr = new int[10];
//要去新增数据---得到数据源---来自键盘
//Scanner这个类,不是我们在同一个包中创建的类,该类存储在Java JDK的类库中,所以我们需要告诉当前程序我们使用的是什么类,即通过Alt+/的方式引入该类
//Scanner监听跟键盘有关的操作,监听内容来源是系统的输入
Scanner sc = new Scanner(System.in);//从外部进入程序的数据,统称为输入性数据
//为了更好的插入数据,所以长度为10的数组只新增九个数据,为插入数据留一个空位
for(int i = 0; i < arr.length-1; i++) {
System.out.println("请输入第" + (i+1) + "个数据");
// System.out.println(sc.next());//不断循环next()方法,可以不断接受数据
//因为要将数据插入到整型数组中,所以需要保证接收到的数据为整型数据
//nextInt方法用于从键盘接收整型数据
// System.out.println(sc.nextInt());输入字母的话,会出现异常提示
try {
//异常捕获,将可能发生异常的代码放置到try的大括号中(代码块)
// System.out.println(sc.nextInt());
arr[i] = sc.nextInt();
} catch(Exception e) {
//如果发生异常则在catch语句块中处理异常,如果没有发生异常,不执行catch中的任何内容
System.out.println("输入的数据类型有误,请重新添加!");
//在使用nextInt方法,发生异常时,程序监听键盘的输入会中断,需要我们将有问题的键盘监听重新连接起来,使用next()重新连接键盘
sc.next();
//为了能够重新输入数据,所以需要针对循环做一次重新开始
i--;
}
}
//返回创建并新增元素的数组
return arr;
}
/**
* 从键盘接收数据,用于插入到数组指定位置处