我在第一个方法里写好的数组怎么在第二个数组里调用啊
public int[] insertData()//插入数据 { int[] a=new int[5]; for(int i=0;i<a.length-1;i++){ System.out.println("请输入第"+(i+1)+"个数据:"); Scanner input=new Scanner(System.in); a[i]=input.nextInt(); } System.out.println("数据元素为:"); for(int n=0;n<a.length;n++){ System.out.print(a[n]+" "); } notice(); return a; } public void showData(int[] a,int length)//显示所有数据 { for(int i=0;i<a.length;i++){ System.out.print(a[i]+" "); } notice(); }
源自:Java方法
8-1 综合案例需求
26
收起
正在回答
4回答
我的意思是如下方式写:
public static void main(String[] args) { Test sc=new Test(); int[] arr = new int[10]; sc.notice(); int n=0; do{ Scanner input=new Scanner(System.in); n=input.nextInt(); switch(n){ case 1: arr = sc.insertData(); case 2: sc.showData(arr, arr.length); } }while(n!=0); }
stajoaaa
2017-08-04 11:06:21
可是这样写的话,在第二个查询数组的方法执行时,又会跑一遍写数组的方法,又得重新写。
package com.imooc; import java.util.Scanner; public class Test { public void notice(){ System.out.println(); 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("******************"); System.out.println(); } public int[] insertData()//插入数据 { int[] a=new int[5]; for(int i=0;i<a.length-1;i++){ System.out.println("请输入第"+(i+1)+"个数据:"); Scanner input=new Scanner(System.in); a[i]=input.nextInt(); } System.out.println("数据元素为:"); for(int n=0;n<a.length;n++){ System.out.print(a[n]+" "); } notice(); return a; } public void showData(int[] a,int length)//显示所有数据 { System.out.println("数据元素为:"); for(int i=0;i<a.length;i++){ System.out.print(a[i]+" "); } notice(); } public void insertAtArray(int[] a,int n,int k)//在指定位置插入数据 { System.out.println("请输入要插入的数据:"); Scanner input1=new Scanner(System.in); n=input1.nextInt(); System.out.println("请输入要插入的位置:"); Scanner input2=new Scanner(System.in); k=input1.nextInt(); a[k]=n; notice(); } public void divTree(int[] a)//是否能被三整除 { for(int i=0;i<a.length;i++) { if(a[i]%3==0){ System.out.print(a[i]+" "); } } notice(); } public static void main(String[] args) { Test sc=new Test(); sc.notice(); int n=0; do{ Scanner input=new Scanner(System.in); n=input.nextInt(); switch(n){ case 1: sc.insertData(); case 2: int[] arr=sc.insertData(); sc.showData(arr, arr.length); } }while(n!=0); } }
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7238 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星