麻烦大神帮我找找错误,谢谢!

麻烦大神帮我找找错误,谢谢!

错误提示如下

http://img1.sycdn.imooc.com//climg/5ab5b26f0001e36b13660960.jpg

package com.imooc.method;


import java.util.Scanner;


public class Manage {

public int[] insertData() 

   {

int m;

int[] a=new int[10];

for(int i=0;i<a.length-1;i++) 

{

System.out.println("请输入要插入的第"+(i+1)+"位数");

Scanner sc = new Scanner(System.in);

m= sc.nextInt();

if(m==0) {

System.out.println("不能输入0");

i--;

continue;

}else {

a[i]=m;

}

}

System.out.println("a的元素有");

for(int n:a)

{

System.out.print(n+" ");

}

return a;

   }

public void showData(int[] a,int length)

{

System.out.println("请输入要显示的位数");

Scanner sc = new Scanner(System.in);

length=sc.nextInt();

for(int i=0;i<length;i++)

{

System.out.println(a[i]);

}

}

public void insertAtArray(int[] a,int n,int k)

   {

   for(int i=0;i<a.length;i++)

   {

    if(i==k) 

    {

     a[i]=a[i-1];

    }

   }a[k]=n;

  }

public void divThree(int[] a)

{

System.out.print("可以被3整除的数有");

for(int i=0;i<a.length;i++)

{

if(a[i]%3==0) 

{

   System.out.print(a[i]+" "); 

}

}

}

    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("******************************************");

System.out.println("请输入对应的数字进行操作:");

}

public static void main(String[] args) {

// TODO Auto-generated method stub

      Manage manage=new Manage();

      int[] a=new int[10];

      boolean flag=true;

      Scanner sc=new Scanner(System.in);

      while(flag) 

      {

    manage.notice();

    int s=sc.nextInt();

    int k;

int n;

switch(s)

    {

    case 1:

    a=manage.insertData();

    break;

    case 2: //显示数据

         manage.showData(a, s);

         break;

    case 3:

    System.out.println("请输入要插入的数字");

    n=sc.nextInt();

    System.out.println("请输入插入的位置");

        k=sc.nextInt();

manage.insertAtArray(a,n,k);

break;

    case 4:

         manage.divThree(a);

         break;

    case 0:

    flag=false;

    break;

    default:

    System.out.println("请重新输入");

    }

      }

}

 

}


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

这个错误提示是因为你的工程中有错误代码,直接点Proceed就可以运行,你试过点这个按钮吗?

关于你的代码:

1、showData()方法不用手动输入要显示的长度,可以通过判断数组元素是否为0来实现,如果为0不显示就行。

2、查询能被3整除的方法,当没有能被3整除的数据时,需要给出错误提示

祝学习愉快!

  • Jess001 提问者 #1
    请问没有能被3整除的数那要如何写啊?把能被3整除的数的输出语句放在哪里?
    2018-03-26 11:57:20
  • irista23 回复 提问者 Jess001 #2
    当没有能被3整除的元素时要给出错误提示。可以定义一个整型变量初始值为0,如果有能被3整除的数据,则变量值加1。然后根据count的值是否为0判断是否有能被3整除的元素。
    2018-03-26 14:56:23
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师