一个关于数组的java程序的小问题

对下面程序做个修改,除满足开头注释的条件外,能够实现当程序随机赋的值和在随机数组中有多个相同值时,可以将与随机赋的值相同的数组元素的下标全部标出(比如说,随机赋的值是5,... 对下面程序做个修改,除满足开头注释的条件外,能够实现当程序随机赋的值和在随机数组中有多个相同值时,可以将与随机赋的值相同的数组元素的下标全部标出(比如说,随机赋的值是5,随机数组中刚好也有两个5,那么就输出这个两个5的下标),谢谢!!!
//写一个方法,返回给定数在数组中的序号,若没有找到则返回-1。
public class H2
{
public static void main(String []args)
{
int[]a=new int[10];
int x;
for(int i=0;i<a.length;i++)
{
a[i]=(int)(Math.random()*10);
System.out.print(a[i]+" ");
}
System.out.println();
x=(int)(Math.random()*10);
System.out.println(x);
int no=getNum(a ,x);
System.out.println(no);
}
static int getNum(int []b,int n)
{
int j ,index=0;
boolean c =true;
for(j=0;j<b.length;j++)
{
if(n==b[j])
{
index = j;
c=false;
break;
}
}
if(c==true)
{
index = -1;
}
return index;
}
}
展开
 我来答
回家先睡觉
2009-05-15 · TA获得超过796个赞
知道小有建树答主
回答量:475
采纳率:0%
帮助的人:645万
展开全部
class H2 {
public static void main(String[] args) {
int[] a = new int[10];
int x;
for (int i = 0; i < a.length; i++) {
a[i] = (int) (Math.random() * 10);
System.out.print(a[i] + " ");
}
System.out.println();
x = (int) (Math.random() * 10);
System.out.println(x);
int[] no = getNum(a, x);
for(int i:no) System.out.println(i);
}

static int[] getNum(int[] b, int n) {
int c=0;
for(int i:b) if(i==n) c++;
if(c==0) return new int[] {-1};
int[] r = new int[c];
c=0;
for(int i=0;i<b.length;i++) if(b[i]==n)
r[c++]=i;
return r;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式