请教一个java方法参数传入的问题
本帖最后由 lixiang201101 于 2013-11-25 23:15:08 编辑
java初学者
老是报错说类型转换有问题,请大侠们帮忙看看。import java.util.*;
import java.io.*;
public class Tongxun
{
//String info[][];
public static void display(String info[][])
{
int i;
System.out.println("编号 姓名 性别 电话 通信地址");
for(i=0;i
System.out.println(info[i][0]+" "+info[i][1]+" "+info[i][2]+" "+info[i][3]+" "+info[i][4]);
}
public static void Input(String info[][])
{
int i,tmp;
Scanner sc = new Scanner(System.in);
System.out.println("请输入您要添加的人的个数");
i=sc.nextInt();
sc.close();
System.out.println("请输入:姓名、性别、电话、通信地址,中间空格隔开");
//这是用于获取键盘输入的方法
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String inputStr = null;
for (int j=0;j
{
//br.readLine():每当在键盘上输入一行内容按回车,刚输入的内容将被br读取到。
while ((inputStr = br.readLine()) != null)
{
//将用户输入的字符串以逗号( )作为分隔符,分隔成个字符串
String[] posStrArr = inputStr.split(" ");
tmp=j;
info[j][0]= String.valueOf(tmp);
for(int k=1;k<5;k++)
{
info[j][k]=posStrArr[k-1];
}
}
}
}
public static void main(String[] args)
{
Tongxun t=new Tongxun();
String Info[][]=new String[100][5];
Tongxun.Input(Info[100][5]);
}
}
分享到:
更多
------解决方案--------------------
Info[100][5]已经是你定义的二维数组里的一个值(String对象)了,你的Input方法要求参入一个二维数组,而你参的是一个String对象,能不报错么。换成Tongxun.Input(Info);就可以了。另外建议楼主有空看下jav变量名命,方法名命,代码风格的规范。
------解决方案--------------------
要求的参数和传入的参数不一致
------解决方案--------------------
引用:Info[100][5]已经是你定义的二维数组里的一个值(String对象)了,你的Input方法要求参入一个二维数组,而你参的是一个String对象,能不报错么。换成Tongxun.Input(Info);就可以了。另外建议楼主有空看下jav变量名命,方法名命,代码风格的规范。正解,撸主对数组变量的声明和使用不太清楚String Info[][]=new String[100][5];这句话声明了一个名为Info的二维数组,要使用这个数组,只要使用Info这个引用即可;不过撸主,接收输入的代码还有错
------解决方案--------------------
方法名应该改为public static void display(String[][] info)
在方法参数里面前面是类型,后面是参数名