Java - 可能从int到byte的有损转换

时间:2014-05-01 11:57:40

标签: java

我遇到了"从int到byte"可能有损转换的问题。错误,但我没有在我的代码中将整数转换为字节。

    public static void main(String[] args) {
  Notebook ntb = new Notebook("Acer","Aspire",15000.0f,20,"Intel Core I73632QM",4,2.2f,"GeForce GT720M",2,8,1000,15.6f,100,150,"DVD");  //<- error here
}

这是Notebook类

package semestralka;


public class Notebook extends produkt.Produkt{
    private String procesor;
    private byte pocetJader;
    private float frekvence;
    private String GPU;
    private byte pametGPU;
    private byte operacniPamet;
    private int pevnyDisk;
    private float uhloprickaDispleje;
    private int sirka;
    private int vyska;
    private String mechanika;

    public Notebook(String vyrobce, String model, float cena, int pocet, String procesor, byte pocetJader, float frekvence, String GPU, byte pametGPU, byte operacniPamet, int pevnyDisk, float uhloprickaDispleje, int sirka, int vyska, String mechanika) {
        this.vyrobce = vyrobce;
        this.model = model;
        this.cena = cena;
        this.pocet = pocet;
        this.procesor = procesor;
        this.pocetJader = pocetJader;
        this.frekvence = frekvence;
        this.GPU = GPU;
        this.pametGPU = pametGPU;
        this.operacniPamet = operacniPamet;
        this.pevnyDisk = pevnyDisk;
        this.uhloprickaDispleje = uhloprickaDispleje;
        this.sirka = sirka;
        this.vyska = vyska;
        this.mechanika = mechanika;
    }


    //getters
    public String getProcesor() {
        return procesor;
    }

    public byte getPocetJader() {
        return pocetJader;
    }

    public String getGPU() {
        return GPU;
    }

    public byte getPametGPU() {
        return pametGPU;
    }

    public byte getOperacniPamet() {
        return operacniPamet;
    }

    public int getPevnyDisk() {
        return pevnyDisk;
    }

    public float getUhloprickaDispleje() {
        return uhloprickaDispleje;
    }

    public int getSirka() {
        return sirka;
    }

    public int getVyska() {
        return vyska;
    }

    public String getMechanika() {
        return mechanika;
    }







}

我不知道为什么会收到此错误。有人可以帮我吗?谢谢。

1 个答案:

答案 0 :(得分:3)

将4放在构造函数中,这是一个int,但是构造函数需要一个字节,这就是为什么int将被转换为一个字节,这就是为什么你得到错误/警告。为什么要使用字节?你可以使用一个int来解决问题,不是吗?