显示所有数据问题
1 | 老师您好, |
public class Textba {
//插入数组数据
public void insertData() {
int[] arr = new int[10];
Scanner s = new Scanner(System.in);
for(int i=0; i<arr.length; i++) {
System.out.println("请输入您的" +(i+1) + "个数据" );
arr[i] = s.nextInt();
}
System.out.println("您输入的数组元素为:");
for(int i=0; i<arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
//显示所有数据
public void showData(int[] a, int length) {
}
// 显示提示信息
public void notice() {
System.out.println("*****************************");
System.out.println(" 1--插入数据");
System.out.println(" 2--显示所有数据");
System.out.println(" 3--在指定位置处插入数据");
System.out.println(" 4--查询能被3整除的数据");
System.out.println(" 0--退出");
System.out.println("*****************************");
}
// 主方法
public static void main(String[] args) {
Textba te = new Textba();
te.notice();
System.out.println("-------请输入相应操作数字-------");
Scanner ex = new Scanner(System.in);
int n = ex.nextInt();
while(0<n & n<5) {
switch (n) {
case 1:
te.insertData();
break;
case 2:
te.showData(a, length);
break;
}
}
if(n==0) {
System.out.println("程序已经退出!");
}
}
}
1,我的插入数据,插入完成后,又重新开始了 问题出在哪里?
2,显示所有数据 能指点下吗? 怎么把方法1里面的 数据,调到方法2里面输出呢
3,我的主罗辑有问题吗,3--在指定位置处插入数据, 这个希望指点下?
正在回答
1、关于插入数组的方法,方法是应该有返回值的public int[] insertData(),返回值就是数组,这样在主方法中调用时,才能接收到存好数据的数组。
2、显示数据,在方法中已经给定了数组的长度,方法体中直接循环输出就可以啦
3、主方法中,while直接设置成死循环就可以了,while(true)。另外,从键盘接收数据的代码要写在循环里才能保证重复执行。在指定位置处插入数据的方法,需要把指定位置以后的数据,从最后一个开始依次往后移动,然后再给指定位置的元素重新赋值。
如果我的回答对你有帮助,请采纳!祝学习愉快!
老师您好,
public int[] insertData() {
int[] arr = new int[10];
Scanner s = new Scanner(System.in);
for(int i=0; i<arr.length-1; i++) {
System.out.println("请输入您的" +(i+1) + "个数据" );
arr[i] = s.nextInt(); }
System.out.println("您输入的数组元素为:");
for(int i=0; i<arr.length-1; i++) {
System.out.print(arr[i] + " "); }
return arr; }
//2显示所有数据
public void showData(int[] a, int length) {
for(int i=0; i<a.length; i++) {
System.out.print(a[i] + " "); } }
//主方法中
while(true) {
Scanner ex = new Scanner(System.in);
int n = ex.nextInt();
switch (n) {
case 1:
te.insertData();
break;
case 2:
int[] arr = te.insertData();
te.showData(arr, arr.length);
break; }
1,为什么执行case2时,必须要把insertData() 则里面的流量执行一遍,
我只想要insertData()里面返回的数据 怎么办呢?
老师您好,显示数据还是不明白,
方法1当中已经把 插入的数组数据 输入 System.out.print(arr[i] + " "); 了。
那么当方法2执行时该怎么让这个arr[i] 也在方法2中显示呢?
arr[i]是 方法1当中的,方法2应该不可以使用吧?
相似问题
登录后可查看更多问答,登录/注册
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7238 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星