Java 我将引用作为输出。我应该在程序中包含什么以获得输出
主要方法是:Java 我将引用作为输出。我应该在程序中包含什么以获得输出,java,arrays,Java,Arrays,主要方法是: package basicprograms; public class Progrm { public long[] ph; public Progrm(long[] ph){ this.ph=ph; } } 包装基本程序; 导入java.util.ArrayList; 公共类UseProgrm{ 公共静态void main(字符串[]args){ ArrayList ar=新的ArrayList(); Progrm p1=新的Progr
package basicprograms;
public class Progrm {
public long[] ph;
public Progrm(long[] ph){
this.ph=ph;
}
}
包装基本程序;
导入java.util.ArrayList;
公共类UseProgrm{
公共静态void main(字符串[]args){
ArrayList ar=新的ArrayList();
Progrm p1=新的Progrm(新长[]{942758427l,4298578432l,3425962l});
Progrm p2=新的Progrm(新长[]{942758427l,4298578432l,3425962l});
Progrm p3=新的Progrm(新长[]{942758427l,4298578432l,3425962l});
ar.add(p1);
ar.add(p2);
ar.add(p3);
对于(int i=0;i
您必须重写程序
类中的toString()
方法
现在,System.out.println
语句正在调用对象类的默认实现
将此添加到您的程序
类:
package basicprograms;
import java.util.ArrayList;
public class UseProgrm {
public static void main(String[] args) {
ArrayList<Progrm> ar = new ArrayList<>();
Progrm p1 = new Progrm(new long[] { 942758427l, 4298578432l, 3425962l });
Progrm p2 = new Progrm(new long[] { 942758427l, 4298578432l, 3425962l });
Progrm p3 = new Progrm(new long[] { 942758427l, 4298578432l, 3425962l });
ar.add(p1);
ar.add(p2);
ar.add(p3);
for (int i = 0; i < ar.size(); i++) {
System.out.println(ar.get(i));
}
}
}
然后,您可以修改它以满足您的需要。您必须重写
程序
类中的toString()
方法
现在,System.out.println
语句正在调用对象类的默认实现
将此添加到您的程序
类:
package basicprograms;
import java.util.ArrayList;
public class UseProgrm {
public static void main(String[] args) {
ArrayList<Progrm> ar = new ArrayList<>();
Progrm p1 = new Progrm(new long[] { 942758427l, 4298578432l, 3425962l });
Progrm p2 = new Progrm(new long[] { 942758427l, 4298578432l, 3425962l });
Progrm p3 = new Progrm(new long[] { 942758427l, 4298578432l, 3425962l });
ar.add(p1);
ar.add(p2);
ar.add(p3);
for (int i = 0; i < ar.size(); i++) {
System.out.println(ar.get(i));
}
}
}
然后,您可以根据需要修改它。默认情况下,Java中的所有类都继承自
对象。在这种情况下,您实际打印的是Progrm::toString
方法,该方法为对象继承,默认情况下返回散列。如果要打印数组的内容(Progrm
类的公共成员ph),则应覆盖Progrm
的toString
,如下所示:
public String toString() {
StringBuilder b = new StringBuilder("");
for ( long p : ph) {
b.append("Value: " + p + ", ");
}
return b.toString();
}
输出将是:
public class Progrm {
public long[] ph;
public Progrm(long[] ph) {
this.ph=ph;
}
@Override
public String toString() {
return "Progrm{" +
"ph=" + Arrays.toString(ph) +
'}';
}
}
有关对象::toString
的更多信息,请参阅:
默认情况下,Java中的所有类都从对象继承。在这种情况下,您实际打印的是Progrm::toString
方法,该方法为对象继承,默认情况下返回散列。如果要打印数组的内容(Progrm
类的公共成员ph),则应覆盖Progrm
的toString
,如下所示:
public String toString() {
StringBuilder b = new StringBuilder("");
for ( long p : ph) {
b.append("Value: " + p + ", ");
}
return b.toString();
}
输出将是:
public class Progrm {
public long[] ph;
public Progrm(long[] ph) {
this.ph=ph;
}
@Override
public String toString() {
return "Progrm{" +
"ph=" + Arrays.toString(ph) +
'}';
}
}
有关对象::toString
的更多信息,请参阅:
试试这个:
Progrm{ph=[942758427, 4298578432, 3425962]}
Progrm{ph=[942758427, 4298578432, 3425962]}
Progrm{ph=[942758427, 4298578432, 3425962]}
for(int i=0;i
试试这个:
Progrm{ph=[942758427, 4298578432, 3425962]}
Progrm{ph=[942758427, 4298578432, 3425962]}
Progrm{ph=[942758427, 4298578432, 3425962]}
for(int i=0;i
在Progrm类中扩展toString()方法。您需要类似于System.out.println(ar.get(i)[0])的内容;System.out.println(ar.get(i)[1]);System.out.println(ar.get(i)[2])代码>,尽管重写toString()会更干净。在Progrm类中扩展toString()方法。您需要类似于System.out.println(ar.get(i)[0])的内容;System.out.println(ar.get(i)[1]);System.out.println(ar.get(i)[2])代码>,尽管重写toString()会更干净。`符号出现是因为不好的松弛习惯吗?:)现在好点了吗?;)这些符号是不是因为一个坏的懒散习惯现在好点了吗?;)