转换一个Byte变量并将其转换为String

时间:2018-06-14 13:09:29

标签: java string byte

我想在控制台中打印Byte变量的值。 我创建了Class" Portata""

public class Portata {
    String nome,descr,portata;

    double prezzo;
    byte qt,cottura;
    String[] ingr,allerg;


    public Portata(String nome, String descr, String[] ingr, String[] allerg, double prezzo, byte cottura, String portata, byte qt) {
        this.nome=nome;
        this.descr=descr;
        this.ingr=ingr;
        this.allerg=allerg;
        this.prezzo=prezzo;
        this.portata=portata;
        this.qt=qt;
    }

   /** All getters and setters **/

    public byte getCottura() {
        return cottura;
    }

    public byte getQt() {
        return qt;
    }

 /** All getters and setters **/
}

我在另一个类中创建了一个ArrayList:

 ArrayList<Portata> piatti=(new Portata("Pasta al Sugo","Ottimo piatto di pasta al Sugo",elenco_ingredienti,elenco_allergeni,25.00,(byte)15,"Primo",(byte)0)); 

但是当我尝试时:

  System.out.println(piatti.get(0).getNome()+", "+piatti.get(0).getDescr()+", "+Byte.toString(piatti.get(0).getCottura())+" ");

它显示为:

 "Pasta al Sugo, Ottimo piatto di pasta al Sugo, 0"

如何显示字节值(15)而不是 0

1 个答案:

答案 0 :(得分:2)

您不会在构造函数中初始化cottura字段,也不会使用setter初始化它,因此它始终保持0,因为它是byte的默认值

要解决此问题,请按如下方式初始化构造函数中的cottura字段:

this.cottura = cottura;