一个关于数组的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;
}
} 展开
//写一个方法,返回给定数在数组中的序号,若没有找到则返回-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;
}
} 展开
展开全部
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;
}
}
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;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询