所以我有两个Java类。有类Mitarbeiter
和类MitarbeiterListe
。
Mitarbeiter
用Mitarbeiter
和id
生成对象name
。 Mitarbeiter
应该保存在一个数组中,该数组在类MitarbeiterListe
的构造函数中初始化。
我写了一个方法getSize()
,该方法应返回数组中保存的Mitarbeiter
的数量。
很遗憾,我无法在getSize()
中使用main()
。它给了我错误:
Cannot invoke getSize() on the array type MitarbeiterListe[]
代码:
/*********************MITARBEITERListe********************/
public class MitarbeiterListe {
static Mitarbeiter[] liste;
public MitarbeiterListe(int index) {
liste = new Mitarbeiter[index];
}
public static int getSize() {
int size =0;
for(int i=0; i< liste.length; i++) {
if(liste[i]!= null) {
size++;
}
}
return size;
}
}
/**********************MITARBEITER************************/
public class Mitarbeiter extends Main {
private int id;
private static int idMax =1;
private String name;
public Mitarbeiter(String name) {
id = idMax++;
this.name = name;
}
}
/**********************MAIN************************/
public class Main {
public static void main(String[] args) {
Mitarbeiter m1 = new Mitarbeiter("Tim");
Mitarbeiter m2 = new Mitarbeiter("Anton");
MitarbeiterListe l1[] = new MitarbeiterListe[5];
//Here I'll get the Error
System.out.println(l1.getSize());
}
答案 0 :(得分:3)
您在System.out.println(l1.getSize());
上遇到错误
因为您的l1
是一个数组实例,所以您这样做:MitarbeiterListe l1[] = new MitarbeiterListe[5];
结果l1[].getSize()
是编译错误,对于数组,没有像getSize()
这样的函数可用。
对于l1
,您只能调用array
的功能,请参阅here。
在@Indestruktible答案中,您可以看到如何调用已定义的getSize()
。
此外,根据您的代码,建议您仔细阅读以下内容:
Main
类以来)(请记住> 不要使用IDE来学习代码,而要使用它来进行编码 )
希望这会有所帮助。
答案 1 :(得分:1)
您应该将5
传递给MitarbeiterListe
的构造函数,而不是创建MitarbeiterListe
-objects的新数组:
MitarbeiterListe l1 = new MitarbeiterListe(5);
System.out.println(l1.getSize());
此外,如注释中所述,liste
和getSize
应该是实例成员,而不是static
变量/方法,否则构造函数根本没有任何意义。
答案 2 :(得分:0)
$(document).on('click', '#excelbutton', function () {
ExportToExcel();
})
function ExportToExcel(pageNumber, isPagination) {
var gcModel = {
FromGiven: $('#dateFromGiven').val(),
ToGiven: $('#dateToGiven').val(),
FromTaken: $('#dateFromTaken').val(),
ToTaken: $('#dateToTaken').val(),
FromCardno: $('#FromCard').val(),
ToCardNo: $('#ToCard').val(),
PageNumber: pageNumber ? pageNumber : 0
};
$.ajax({
url: "/GiftCard/ExportToExcel",
type: 'POST',
contentType: 'application/json',
data: JSON.stringify(gcModel) ,
// data: { },
success: function (responce) {
},
error: function () {
}
})
}