如何返回一个用Scanner输入的数组?
卡了很久,这段代码是修改了很乱的,知道表达题目的意思就行,代码很乱
public class shuzu {
public int[] insertData() {
int[] a= new int[9];
for(int i = 0;i < a.length;i++){
System.out.println("请输入第"+(i+1)+"个数据:");
}
return a;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
shuzu one = new shuzu();
Scanner scan1 = new Scanner(System.in);
int[] result= new int[9];
for(int i=0;i<result.length;i++){
result = one.insertData();
result[i]=scan1.nextInt();
}
正在回答
public class shuzu { //定义成员属性scan1 Scanner scan1 = new Scanner(System.in); public int[] insertData() { int[] a = new int[9]; for (int i = 0; i < a.length; i++) { System.out.println("请输入第" + (i + 1) + "个数据:"); //用数组a来接收每次输入的值 a[i] = scan1.nextInt(); } return a; } public static void main(String[] args) { shuzu one = new shuzu(); //定义数组result来接收insertData()返回的数组 int[] result = one.insertData(); //循环输出数组元素 for (int i = 0; i < result.length; i++) { System.out.print(result[i]+" "); } } }
我成功了,但是不知道怎么对的
public class shuzu {
public int[] insertData() {
int[] a= new int[9];
Scanner scan = new Scanner(System.in);
for(int i = 0;i < a.length;i++){
System.out.println("请输入第"+(i+1)+"个数据:");
a[i]=scan.nextInt();
}
return a;
}
public void showData(int[] a,int length) {
System.out.println("数组元素为:");
for(int i=0;i<length;i++){
System.out.print(a[i]+" ");
}
System.out.println();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
shuzu one = new shuzu();
int[] result= one.insertData();
System.out.println("数组元素为:");
for(int a:result)
System.out.print(a+" ");
System.out.println();
one.showData(result, 9);
}
不想把Scanner写在方法内,不然每次返回值就会又然后我输入一遍也就是会再次调用方法,我的想法是把Scanner写在主函数里
我的要求是,必须使用方法调用,而且方法必须是无参有返回值
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7238 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星