初学者java编程 提示用户输入一个一维数组,为这个数组添加元素

提示用户输入一个一维数组1.为这个数组添加元素2.定义一个方法,添加元素3.定义一个方法,删除数组中的某一个元素4.定义一个方法,返回指定位置的元素5.定义一个方法输出数... 提示用户输入一个一维数组1.为这个数组添加元素2.定义一个方法,添加元素3.定义一个方法,删除数组中的某一个元素4.定义一个方法,返回指定位置的元素5.定义一个方法 输出数组元素 请每一步写好详细的注释,谢谢!在线等待…… 展开
 我来答
专治八阿哥的孟老师
推荐于2017-09-05 · 爱生活,爱编程,专心于学习技术和撸猫
专治八阿哥的孟老师
采纳数:494 获赞数:3914

向TA提问 私信TA
展开全部
public static void main(String[] args) throws IOException {
System.out.println("添加元素方法开始");
String[] arr=add();
System.out.println("添加后数组元素是:");
printArr(arr);
System.out.println("获取指定位置元素方法开始");
System.out.println(getIndex(arr));
System.out.println("删除元素方法开始");
arr=delete(arr);
System.out.println("删除后数组元素是:");
printArr(arr);
}

public static String[] add() {
Scanner sc=new Scanner(System.in);
System.out.println("请输入数组元素个数,回车确认");
int n=Integer.parseInt(sc.nextLine());
System.out.println("请输入数组元素,回车确认");
String[] arr=new String[n];
for(int i=0; i < n; i++) {// 循环,从控制台读数据放到数组里
arr[i]=sc.nextLine();
}
return arr;
}

public static String[] delete(String[] arr) {
Scanner sc=new Scanner(System.in);
System.out.println("要删除第几个元素?(数组脚标从0开始),回车确认");
int n=Integer.parseInt(sc.nextLine());
String[] tmp=new String[arr.length - 1];
if(n >= arr.length) {
System.out.println("脚标超出数组长度,删除失败");
return arr;
}
for(int i=n; i < arr.length - 1; i++) {
arr[i]=arr[i + 1];// 从位置n开始,后面的元素覆盖前面的元素
}
for(int i=0; i < arr.length - 1; i++) {
tmp[i]=arr[i];// 将数组赋值给新数组,不要最后一个元素,因为数组长度-1了
}
return tmp;
}

public static String getIndex(String[] arr) {
Scanner sc=new Scanner(System.in);
System.out.println("要获取第几个元素?(数组脚标从0开始),回车确认");
int index=Integer.parseInt(sc.nextLine());
if(index >= arr.length) {
System.out.println("指定位置超出数组大小");
return null;
} else {
System.out.println("获取到的是:");
return arr[index];
}
}

public static void printArr(String[] arr) {
for(int i=0; i < arr.length; i++) {
System.out.print(arr[i] + ",");
}
System.out.println();
}
xiao4kang5
2013-04-15 · TA获得超过331个赞
知道小有建树答主
回答量:301
采纳率:66%
帮助的人:155万
展开全部
亲,咱先假设咱定义一个类名Abc,比如说是一个学生信息管理系统吧,要实现这些功能,建三个类。
/

//定义一个学生信息类
public class Student{
java.util.Scanner sn = new java.util.Scanner(System.in);//从控制台输入的函数
String name[] = new String[30];//在内存中开辟大小为30的空间
String sex[] = new String[30];
String mobrle[] = new String[30];
String address[] = new String[30];

//定义一个查询的方法,这些方法的次序你可以随便换
void seek(int k) {
System.out.println("\n" + name[k] + "\n性别:" + sex[k] + "\n电话:"
+ mobrle[k] + "\n家庭住址:" + address[k]);
}

//定义一个添加的方法
void add(int j) {
System.out.println("请输入姓名");
name[j] = sn.next();
System.out.println("请输入性别");
sex[j] = sn.next();
System.out.println("请输入手机号");
mobrle[j] = sn.next();
System.out.println("请输入家庭住址");
address[j] = sn.next();
}
//定义一个删除的方法
void delete(int k) {
name[k] = null;
sex[k] = null;
mobrle[k] = null;
address[k] = null;
}

}

//定义一个学生类

public class Student {
StudentBook sbBook = new StudentBook();
java.util.Scanner sn = new java.util.Scanner(System.in);
String name1;
void add() {
for (int j = 0; j < sbBook.name.length; j++) {
if (sbBook.name[j] == null) {
sbBook.add(j);
System.out.println("╭─────╮\n│添加成功!│\n╰─────╯");
break;
}
}
}
void seek() {
for (int t = 12; t != 0;) {
System.out
.println("\n┏━━━━━┓\n┃查询同学录┃\n┗━━━━━┛\n1.按姓名查找\n2.按性别查找\n3.按地区查找\n4.查看全部\n0.返回上一级菜单");
int wu = 0;
t = sn.nextInt();//这个地方你可以只定义一种查询的方法,我在这里只是为了更多元化一些。
if (t == 1) {
System.out.println("请输入查询同学的姓名");
name1 = sn.next();
for (int k = 0; k < sbBook.name.length; k++) {
if (name1.equals(sbBook.name[k])) {
sbBook.seek(k);
wu++;
}
}
}
if (t == 2) {
System.out.println("请输入查询同学的性别");
name1 = sn.next();
for (int k = 0; k < sbBook.sex.length; k++) {
if (name1.equals(sbBook.sex[k])) {
sbBook.seek(k);
wu++;
}
}
}
if (t == 3) {
System.out.println("请输入查询同学的地区");
name1 = sn.next();
for (int k = 0; k < sbBook.sex.length; k++) {
if (name1.equals(sbBook.address[k])) {
sbBook.seek(k);
wu++;
}
}
}
if (t == 4) {
for (int k = 0; sbBook.name[k] != null; k++) {
sbBook.seek(k);
wu++;
}
}
if (t == 0) {
break;
}
if (wu == 0) {
System.out.println("没有该同学的信息\n");
}
}
}
void alter() {
System.out.println("请输入修改同学的姓名");
name1 = sn.next();
for (int k = 0; k < sbBook.name.length; k++) {
if (name1.equals(sbBook.name[k])) {
sbBook.seek(k);
sbBook.add(k);
System.out.println("╭─────╮\n│修改成功!│\n╰─────╯");
break;
} else {
System.out.println("没有这个人的信息");
break;
}
}
}
void delete() {
System.out.println("请输入删除同学的姓名");
name1 = sn.next();
for (int k = 0; k < sbBook.name.length; k++) {
if (name1.equals(sbBook.name[k])) {
sbBook.seek(k);
sbBook.delete(k);
System.out.println("╭─────╮\n│删除成功!│\n╰─────╯");
break;
} else {
System.out.println("没有这个人的信息");
break;
}
}
}
}

//运行的主类,调用上面的两个类
public class Text {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
java.util.Scanner sn = new java.util.Scanner(System.in);
Student Su = new Student();
System.out.println("┏━━━━━━━━━┓\n┃欢迎来到同学录系统┃\n┗━━━━━━━━━┛");
for (int i = 1; i != 0;) {
System.out
.println("\n1.添加同学录\n2.查询同学录\n3.修改同学录\n4.删除同学录信息\n0.退出\n");
i = sn.nextInt();
if (i == 1) {
Su.add();
}
if (i == 2) {
Su.seek();
}
if (i == 3) {
Su.alter();
}
if (i == 4) {
Su.delete();
}
if (i == 0) {
break;
}
}
System.out.println("╔════════╗\n║谢谢使用,再见!║\n╚════════╝");
}
}

所有的系统都是一个道理,有不明白的可以再问。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-04-15
展开全部
分不多。。哈哈。。可以用Scanner类、加参数System.in可以填充数组,其他的就不用讲了吧?简单的得自己思考?呵呵
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式