Java返回值与数组问题!急!
1.编写一个方法,该方法接受一个整型数n和一个整型数数组作为参数,如果数组中的所有数都能整除n,返回true,否则返回false。最后要求输出该方法结果2.编写一个方法,...
1.编写一个方法,该方法接受一个整型数n和一个整型数数组作为参数,如果数组中的所有数都能整除n,返回true,否则返回false。最后要求输出该方法结果
2.编写一个方法,该方法接受一个整型数数组和一个整数target为参数,并返回target在数组中出现时的第一个索引,如果数组不包含target,则返回-1.
我主要遇到的问题是数组在编写的方法中必须要初始化,而我希望在程序运行后输入数组长度,这不就需要在一个无返回值方法中操作么?那么就要初始化两遍数组?还是该怎么做?完全没有头绪啊。 展开
2.编写一个方法,该方法接受一个整型数数组和一个整数target为参数,并返回target在数组中出现时的第一个索引,如果数组不包含target,则返回-1.
我主要遇到的问题是数组在编写的方法中必须要初始化,而我希望在程序运行后输入数组长度,这不就需要在一个无返回值方法中操作么?那么就要初始化两遍数组?还是该怎么做?完全没有头绪啊。 展开
2个回答
展开全部
很简单啊,数组中元素也在程序运行后用户输入吗?
import java.util.Scanner;
public boolean getValue(int n,int m[])
{
int b;
boolean a=false;
Scanner scan=new Scanner(System.in);
b=scan.nextInt();
System.out.print("执行方法1:\n请输入数组长度:");
m=new int[b];
System.out.print("请输入数组元素:");
for(int i=0;i<m.length;i++)
{
m[i]=scan.nextInt();
}
System.out.print("请输入n的值:");
n=scan.nextInt();
for(int i=0;i<m.length;i++)
{
if(m[i]%n!=0)
{
a=true;
}
}
return a;
}
public int getIndex(int target,int m[])
{
int b;
int a=-1;
Scanner scan=new Scanner(System.in);
b=scan.nextInt();
System.out.print("执行方法2:\n请输入数组长度:");
m=new int[b];
System.out.print("请输入数组元素:");
for(int i=0;i<m.length;i++)
{
m[i]=scan.nextInt();
}
System.out.print("请输入target的值:");
target=scan.nextInt();
for(int i=0;i<m.length;i++)
{
if(m[i]==target)
{
a=i;
break;
}
}
return a;
}
希望采纳,java有什么不懂的可以问我,祝你学习愉快。
import java.util.Scanner;
public boolean getValue(int n,int m[])
{
int b;
boolean a=false;
Scanner scan=new Scanner(System.in);
b=scan.nextInt();
System.out.print("执行方法1:\n请输入数组长度:");
m=new int[b];
System.out.print("请输入数组元素:");
for(int i=0;i<m.length;i++)
{
m[i]=scan.nextInt();
}
System.out.print("请输入n的值:");
n=scan.nextInt();
for(int i=0;i<m.length;i++)
{
if(m[i]%n!=0)
{
a=true;
}
}
return a;
}
public int getIndex(int target,int m[])
{
int b;
int a=-1;
Scanner scan=new Scanner(System.in);
b=scan.nextInt();
System.out.print("执行方法2:\n请输入数组长度:");
m=new int[b];
System.out.print("请输入数组元素:");
for(int i=0;i<m.length;i++)
{
m[i]=scan.nextInt();
}
System.out.print("请输入target的值:");
target=scan.nextInt();
for(int i=0;i<m.length;i++)
{
if(m[i]==target)
{
a=i;
break;
}
}
return a;
}
希望采纳,java有什么不懂的可以问我,祝你学习愉快。
更多追问追答
追问
你第二个程序中只能返回a=-1啊?在哪里返回那个索引呢?是加到break前么?我刚开始学习java,老师讲的有些快,我对数组跟逻辑型理解很混乱
并且还有一个问题 如何输出这个方法?我只知道再建立一个无返回值的方法,然后System.out.println(getValue());这样输出,可是这样引用该方法时需要在方法括号内输入变量啊?这不就使得方法里的变量失去作用了么。
展开全部
private boolean method1(int n, int[] array)
{
boolean result = true;
for(int i=0;i<array.length;i++)
{
if(array[i]%n!=0)
{
result = false;
break;
}
}
return result;
}
private int method2(int target, int[] array)
{
int result = -1;
for(int i=0;i<array.length;i++)
{
if(target == array[i])
{
result = i;
break;
}
}
return result;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询