关于java通过方法调用传递一个数组的疑问
例如:通过方法调用传递一个数组?publicclassJavaDemo10{publicstaticvoidmain(Stringargs[]){inti[]=newin...
例如:通过方法调用传递一个数组?
public class JavaDemo10
{
public static void main(String args[])
{
int i[]=new int[10];
init(i); //我不明折,为什么调用init方法,为什么在括号里入输i,而且i的值是多 少
print(i);//我不明折,为什么调用print方法,为什么在括号里入输i,而且i的值是多少
}
//声明一个方法,要求此方可以为数组中的内容初始化内容
//把堆内存空间的内容取出,之后在方法中进行加工
public static void init(int x[]) // (int x[])是接收i[]传递过来的数组,但x[]没有说等于i[]呀。
{
for (int y=0;y<x.length;y++)
{
x[y]=y+1;
}
}
public static void print(int x[])// (int x[])是接收i[]传递过来的数组,但x[]没有说等于i[]呀。
{
for (int y=0;y<x.length;y++ )
{
System.out.println("数据i["+y+"]="+x[y]);
}
}
} 展开
public class JavaDemo10
{
public static void main(String args[])
{
int i[]=new int[10];
init(i); //我不明折,为什么调用init方法,为什么在括号里入输i,而且i的值是多 少
print(i);//我不明折,为什么调用print方法,为什么在括号里入输i,而且i的值是多少
}
//声明一个方法,要求此方可以为数组中的内容初始化内容
//把堆内存空间的内容取出,之后在方法中进行加工
public static void init(int x[]) // (int x[])是接收i[]传递过来的数组,但x[]没有说等于i[]呀。
{
for (int y=0;y<x.length;y++)
{
x[y]=y+1;
}
}
public static void print(int x[])// (int x[])是接收i[]传递过来的数组,但x[]没有说等于i[]呀。
{
for (int y=0;y<x.length;y++ )
{
System.out.println("数据i["+y+"]="+x[y]);
}
}
} 展开
7个回答
展开全部
你好,我把答案写在注释上了。
public class JavaDemo10 {
public static void main(String args[]) {
//java的基本思想一切皆为对象 下面的语句定义一个整型数组对象,长度为10
int i[] = new int[10];
// 调用init是为了初始化数组对象,
//括号里输入i是因为你写的init方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
init(i);
// 调用print是为了按照你要的方式输出数组中的元素,
//括号里输入i是因为你写的print方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
print(i);// 我不明折,为什么调用print方法,为什么在括号里入输i,而且i的值是多少
}
public static void init(int x[]) // 因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
x[y] = y + 1;
}
}
public static void print(int x[])//因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
System.out.println("数据i[" + y + "]=" + x[y]);
}
}
}
public class JavaDemo10 {
public static void main(String args[]) {
//java的基本思想一切皆为对象 下面的语句定义一个整型数组对象,长度为10
int i[] = new int[10];
// 调用init是为了初始化数组对象,
//括号里输入i是因为你写的init方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
init(i);
// 调用print是为了按照你要的方式输出数组中的元素,
//括号里输入i是因为你写的print方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
print(i);// 我不明折,为什么调用print方法,为什么在括号里入输i,而且i的值是多少
}
public static void init(int x[]) // 因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
x[y] = y + 1;
}
}
public static void print(int x[])//因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
System.out.println("数据i[" + y + "]=" + x[y]);
}
}
}
展开全部
你好,我把答案写在注释上了。
public class JavaDemo10 {
public static void main(String args[]) {
//java的基本思想一切皆为对象 下面的语句定义一个整型数组对象,长度为10
int i[] = new int[10];
// 调用init是为了初始化数组对象,
//括号里输入i是因为你写的init方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
init(i);
// 调用print是为了按照你要的方式输出数组中的元素,
//括号里输入i是因为你写的print方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
print(i);// 我不明折,为什么调用print方法,为什么在括号里入输i,而且i的值是多少
}
public static void init(int x[]) // 因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
x[y] = y + 1;
}
}
public static void print(int x[])//因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
System.out.println("数据i[" + y + "]=" + x[y]);
}
}
}
public class JavaDemo10 {
public static void main(String args[]) {
//java的基本思想一切皆为对象 下面的语句定义一个整型数组对象,长度为10
int i[] = new int[10];
// 调用init是为了初始化数组对象,
//括号里输入i是因为你写的init方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
init(i);
// 调用print是为了按照你要的方式输出数组中的元素,
//括号里输入i是因为你写的print方法接收一个整型数组的参数
//i的值你可以使用System.out.println(i);进行观察,其实就是它在内存中的地址
print(i);// 我不明折,为什么调用print方法,为什么在括号里入输i,而且i的值是多少
}
public static void init(int x[]) // 因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
x[y] = y + 1;
}
}
public static void print(int x[])//因为x[]只是一个形参,你传递的是实参,只要类型一样就能接收
{
for (int y = 0; y < x.length; y++) {
System.out.println("数据i[" + y + "]=" + x[y]);
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那个init()和print()里面是不是因该放i[]啊?反正他的意思就是把数组i[]放进去执行
你是才学习JAVA啊?
你是才学习JAVA啊?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-09-04
展开全部
java 传参有两种类型。传值(值传递)和传地址(引用传递)
public static void init(int x[]) 引用的是init(i);中i的地址
public static void print(int x[]) 引用是print(i);中i的地址
x[]都是引用类型
基本类型参数都是值传递,引用类型像数组,集合都是引用传递,值传递后你改变参数的值,原来的数不会改变,就相当于重新开辟一块空间,改变的是新空间的值,引用传递,是把引用(i的地址)传过去了,没有开辟空间,你改变值还是改变原来空间的值,
public static void init(int x[]) 引用的是init(i);中i的地址
public static void print(int x[]) 引用是print(i);中i的地址
x[]都是引用类型
基本类型参数都是值传递,引用类型像数组,集合都是引用传递,值传递后你改变参数的值,原来的数不会改变,就相当于重新开辟一块空间,改变的是新空间的值,引用传递,是把引用(i的地址)传过去了,没有开辟空间,你改变值还是改变原来空间的值,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那就返回值定义为List类型就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询