java 从控制台输入一个 检查在一个数组中是否有这个数字,并输出这个数字所在数组中的位置 问题

java从控制台输入一个检查在一个数组中是否有这个数字,并输出这个数字所在数组中的位置,如果有相同的数字则相应的输出这几个位置,编译没问题,执行有报错!大神帮看看!imp... java 从控制台输入一个 检查在一个数组中是否有这个数字,并输出这个数字所在数组中的位置,如果有相同的数字则相应的输出这几个位置,编译没问题,执行有报错!大神帮看看!

import java.util.*;
public class LinearFindArray
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.print("输入您要找的数:");
int number = input.nextInt();
int number1;
int index = -1;
int [] array = {2,4,5,4,8,9};
int [] array1 = new int[6];
int n;
int x=0;
for(int i = 0;i <= array.length;i++)
{

number1 = array[i];
if(number==number1)
{
n=i+1;
System.out.println(n);
}
else
{
n=-1;
System.out.println(n);
}
int j = 0;
do
{
array1[j] = n;
j++;
}
while (j < i);
}

int [] array2 = array1;
for(int m = 0; m < 6;m++)
{
if(array2[m]!=-1)
{
x = array2[m];
}

}
if(x!=0)
{
System.out.println("您要找的数字在"+x+"位置");
}
else
{
System.out.println("您要找的数字不存在在");
}
}
}
展开
 我来答
粉红顽皮蛇tz
2017-03-17 · TA获得超过467个赞
知道小有建树答主
回答量:419
采纳率:85%
帮助的人:153万
展开全部
           Scanner input = new Scanner(System.in);
System.out.print("输入您要找的数:");
int number = input.nextInt();
int numbers = 0;
int [] array = {2,4,5,5,8,9};
for(int i = 0 ; i < array.length ; i++){
if(number == array[i]){
numbers = i+1;
System.out.println("输入的数字在数组的"+numbers+"位置");
}

}
if(numbers == 0 ){
System.out.println("输入的数字不存在");
}

没你想的那么复杂

makeio
2017-03-17 · TA获得超过393个赞
知道小有建树答主
回答量:253
采纳率:54%
帮助的人:117万
展开全部
数组下标从0开始 , 而array.length 长度是6,

其他逻辑 自己再看看吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式