我的代码一直在打印“[Ljava.lang.String;@4e50df2e”,我不确定把这个 toString() 放在哪里以及如何放
My code keeps on Printing " [Ljava.lang.String;@4e50df2e "not really sure where to and how to put this toString()
** 如您所见,我制作了一个程序来打印同一分支机构和学院的学生记录,用户在其中输入姓名和学号。
我已经尝试从我的 IDE 生成 toString() 但它仍然显示“[Ljava.lang.String;@4e50df2e”这些...请帮我摆脱这个...谢谢你。**
class Stur
{
static String branchcode="C04";
static String branch="Computer Sc. & Eng. ";
static String rollcode="18020";
static String collegeName="Kalaniketan Polytechnic College";
String rollno[],name[];
Stur(String n[],String r[])
{
rollno=r;
name=n;
System.out.println(name+" \t "+rollcode+""+branchcode+""+rollno+" \t"+branch+""+collegeName);
}
}
class staticVar1 //main method class
{
public static void main(String ujyg[])
{
int j=0, i=0;
Scanner object=new Scanner(System.in);
System.out.println("how many Students ");
int n=object.nextInt();
String arr[]=new String [n];
for(i=0;i<arr.length;i++)
{
System.out.print("Enter roll number:");
arr[i]=object.next();
System.out.print("Enter Name:");
arr[i]=object.next();
}
System.out.println("Name \t Roll Number \t Branch \t\t College\n");
for(j=0;j<arr.length;j++)
{
Stur st=new Stur(new String[i], new String[i]);
}}
}
期待这样的输出
Name Roll Number Branch College
Anf 18020C0406 Computer Sc. & Eng. Kalaniketan Polytechnic College
xyz 18020C0402 Computer Sc. & Eng. Kalaniketan Polytechnic College
Ad 18020C0405 Computer Sc. & Eng. Kalaniketan Polytechnic College
Ax 18020C0401 Computer Sc. & Eng. Kalaniketan Polytechnic College
请查找更新后的代码。
class Stur
{
static String branchcode="C04";
static String branch="Computer Sc. & Eng. ";
static String rollcode="18020";
static String collegeName="Kalaniketan Polytechnic College";
String rollno,name;
Stur(String n,String r)
{
rollno=r;
name=n;
System.out.println(name + "\t" + rollcode+branchcode+rollno + "\t" + branch + " " + collegeName);
}
}
class staticVar1 //main method class
{
public static void main(String ujyg[])
{
int j=0, i=0;
Scanner object=new Scanner(System.in);
System.out.println("how many Students ");
int n=object.nextInt();
String nameArr[]=new String [n];
String rollnoArr[]=new String [n];
for(i=0;i<n;i++)
{
System.out.print("Enter roll number:");
rollnoArr[i]=object.next();
System.out.print("Enter Name:");
nameArr[i]=object.next();
}
System.out.println("Name \t Roll Number \t Branch \t\t College\n");
Stur st[] = new Stur[n];
for(j=0;j<n;j++)
{
st[j] = new Stur(nameArr[j], rollnoArr[j]);
}
}
}
您试图直接打印一个数组,所以它给了您对象哈希码和 class 名称。如果你想像你说的那样输出,你需要一个一个地打印数组的元素。
** 如您所见,我制作了一个程序来打印同一分支机构和学院的学生记录,用户在其中输入姓名和学号。
我已经尝试从我的 IDE 生成 toString() 但它仍然显示“[Ljava.lang.String;@4e50df2e”这些...请帮我摆脱这个...谢谢你。**
class Stur
{
static String branchcode="C04";
static String branch="Computer Sc. & Eng. ";
static String rollcode="18020";
static String collegeName="Kalaniketan Polytechnic College";
String rollno[],name[];
Stur(String n[],String r[])
{
rollno=r;
name=n;
System.out.println(name+" \t "+rollcode+""+branchcode+""+rollno+" \t"+branch+""+collegeName);
}
}
class staticVar1 //main method class
{
public static void main(String ujyg[])
{
int j=0, i=0;
Scanner object=new Scanner(System.in);
System.out.println("how many Students ");
int n=object.nextInt();
String arr[]=new String [n];
for(i=0;i<arr.length;i++)
{
System.out.print("Enter roll number:");
arr[i]=object.next();
System.out.print("Enter Name:");
arr[i]=object.next();
}
System.out.println("Name \t Roll Number \t Branch \t\t College\n");
for(j=0;j<arr.length;j++)
{
Stur st=new Stur(new String[i], new String[i]);
}}
}
期待这样的输出
Name Roll Number Branch College
Anf 18020C0406 Computer Sc. & Eng. Kalaniketan Polytechnic College
xyz 18020C0402 Computer Sc. & Eng. Kalaniketan Polytechnic College
Ad 18020C0405 Computer Sc. & Eng. Kalaniketan Polytechnic College
Ax 18020C0401 Computer Sc. & Eng. Kalaniketan Polytechnic College
请查找更新后的代码。
class Stur
{
static String branchcode="C04";
static String branch="Computer Sc. & Eng. ";
static String rollcode="18020";
static String collegeName="Kalaniketan Polytechnic College";
String rollno,name;
Stur(String n,String r)
{
rollno=r;
name=n;
System.out.println(name + "\t" + rollcode+branchcode+rollno + "\t" + branch + " " + collegeName);
}
}
class staticVar1 //main method class
{
public static void main(String ujyg[])
{
int j=0, i=0;
Scanner object=new Scanner(System.in);
System.out.println("how many Students ");
int n=object.nextInt();
String nameArr[]=new String [n];
String rollnoArr[]=new String [n];
for(i=0;i<n;i++)
{
System.out.print("Enter roll number:");
rollnoArr[i]=object.next();
System.out.print("Enter Name:");
nameArr[i]=object.next();
}
System.out.println("Name \t Roll Number \t Branch \t\t College\n");
Stur st[] = new Stur[n];
for(j=0;j<n;j++)
{
st[j] = new Stur(nameArr[j], rollnoArr[j]);
}
}
}
您试图直接打印一个数组,所以它给了您对象哈希码和 class 名称。如果你想像你说的那样输出,你需要一个一个地打印数组的元素。