我得到一个“非静态方法不能从静态上下文引用” - 我相信这基本上意味着该对象没有被创建。我做错了什么?
public void loadData() {
String csvFile = "/data/patientList.csv";
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader(csvFile));
br.readLine();
String line1 = null;
while ((line1 = br.readLine()) != null) {
String[] patient = line1.split(",");
int bedNum = Integer.parseInt(patient[0]);
Patient patient1 = new Patient(bedNum, patient[1], patient[2], patient[3], patient[4],
RESPIRATORY_RATE, HEART_RATE, SYSTOLIC, SPO2);
在这里抛出错误,例如:
patientNameField.setText(Patient.getFistName());
最佳答案
此错误听起来像是您尝试这样做:
public static void main(String args[]) {
loadData();
}
public void loadData() { /* method code */ }
这不起作用,因为方法 loadData
不是静态的,需要调用一个对象。
按如下方式更改代码:
public class MyClass { // you can name your class like you want
public static void main(String args[]) {
final MyClass instance = new MyClass(); //assuming there is a non-argument constructor
instance.loadData(); // call "loadData" on a specifc instance of MyClass
}
public void loadData() { /* method code */ }
}
关于Java解析csv并创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26642382/