我正在尝试使用此方法在文件 podaci.java 中保存我的数据:
public Podaci(double brojKalorijaId, int dan, int mjesec, int godina, int proteini,
int ugljikohidrati, int masti, int godine, int masa, int aktivnost, int hr) {
this.brojKalorijaId = brojKalorijaId;
this.dan = dan;
this.mjesec = mjesec;
this.godina = godina;
this.proteini = proteini;
this.ugljikohidrati = ugljikohidrati;
this.masti = masti;
this.godine = godine;
this.masa = masa;
this.aktivnost = aktivnost;
this.hr = hr;
}
我在其他 .java 文件中调用了这样的方法:
double brojKalorija = (double) (ugljikohidratiInt * 4
+ proteiniInt * 4 + mastiInt * 4)
- (((-20.4022 + (0.4472 * hrInt)
- (0.1263 * masaInt) + (0.074 * godineInt)) / 4.184) * aktivnostInt);
brojKalorija = round(brojKalorija, 2,
BigDecimal.ROUND_HALF_UP);
poruka = "U suficitu ste ~ " + brojKalorija
+ " kalorija.";
JOptionPane.showMessageDialog(null, poruka);
/*here is error*/ Podaci noviPodaci = new Podaci(brojKalorija, danInt,
mjesecInt, godinaInt, proteiniInt,
ugljikohidratiInt, mastiInt, godineInt,
masaInt, aktivnostInt, hrInt);
DatabaseUtils.spremiPodatke(noviPodaci);
错误说:
The method Podaci(double, int, int, int, int, int, int, int, int, int, int) is undefined for the type new ActionListener(){}
为什么我会收到此错误?
编辑:podaci.java 代码在这里,我尝试将 double 更改为 BigDecimal,但没有用
package podaci;
import java.math.BigDecimal;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "podaci.podaci_izracuna")
public class Podaci {
@Id
@Column(name = "brojKalorija_ID")
@GeneratedValue
private double brojKalorijaId;
@Column(name = "dan")
private int dan;
@Column(name = "mjesec")
private int mjesec;
@Column(name = "godina")
private int godina;
@Column(name = "proteini")
private int proteini;
@Column(name = "ugljikohidrati")
private int ugljikohidrati;
@Column(name = "masti")
private int masti;
@Column(name = "godine")
private int godine;
@Column(name = "masa")
private int masa;
@Column(name = "aktivnost")
private int aktivnost;
@Column(name = "heartRate")
private int hr;
public Podaci(double brojKalorijaId, int dan, int mjesec, int godina, int proteini,
int ugljikohidrati, int masti, int godine, int masa, int aktivnost, int hr) {
this.brojKalorijaId = brojKalorijaId;
this.dan = dan;
this.mjesec = mjesec;
this.godina = godina;
this.proteini = proteini;
this.ugljikohidrati = ugljikohidrati;
this.masti = masti;
this.godine = godine;
this.masa = masa;
this.aktivnost = aktivnost;
this.hr = hr;
}
public Podaci() {}
public double getBrojKalorijaId() {
return brojKalorijaId;
}
public int getDan() {
return dan;
}
public int getMjesec() {
return mjesec;
}
public int getGodina() {
return godina;
}
public int getProteini() {
return proteini;
}
public int getUgljikohidrati() {
return ugljikohidrati;
}
public int getMasti() {
return masti;
}
public int getGodine() {
return godine;
}
public int getMasa() {
return masa;
}
public int getAktivnost() {
return aktivnost;
}
public int getHr() {
return hr;
}
}