Java,在main中给出int值,并在其他类中使用该值(不能只使用classname.intname)



我想取值"slag",我一直给它一个随机值,并在类"spiller"中使用它。如果需要的话,我可以发布其余的代码。

public static void main(String[] arg)
  {
    Matadorspil spil = new Matadorspil();
    spil.spillere.add(new Spiller("Phillip",50000));   // opret spiller Søren
    spil.spillere.add(new Spiller("Jaqob",50000));   // opret spiller Gitte
    spil.spillere.add(new Spiller("Rune",500000));
    // løb gennem 20 runder (40 ture)
    for (spil.spillersTur=0; spil.spillersTur<400000; spil.spillersTur++)
    {
      // tag skiftevis Søren og Gitte (% er forklaret i afsnit Fejl: Henvisningskilde ikke fundet)
      Spiller sp = spil.spillere.get(spil.spillersTur % spil.spillere.size());
      int slag = (int)(Math.random()*6)+1;     // og slå et terningkast (1-6)
      System.out.println("***** "+sp.navn+" på felt "+sp.feltnr+" slår "+slag);
      for (int i=1; i<=slag; i=i+1)                  // nu rykkes der
      {
        // gå til næste felt. Hvis vi når over antal felter så tæl fra 0
        sp.feltnr = sp.feltnr + 1;
        if (sp.feltnr == spil.felter.size()) sp.feltnr=0;
        Felt felt = spil.felter.get(sp.feltnr);
        if (i<slag) felt.passeret(sp); // kald passeret() på passerede felter
        else felt.landet(sp);          // kald landet() på sidste felt
        try { Thread.sleep(300); } catch (Exception e) {} // vent 0.3 sek
      }
      try { Thread.sleep(30); } catch (Exception e) {} // tur slut, vent 3 sek
    }
  }

我想在类中使用它:

   public class Bryggeri extends Felt{
    Spiller ejer;
    double pris;
    double grundleje;
    public Bryggeri(String navn, double pris, double leje){
        this.navn = navn;
        this.pris = pris;
        this.grundleje = leje;
    }
    public void landet(Spiller sp){
        sp.besked("Du er landet på "+navn);
        if (sp==ejer){
            sp.besked("Det er din egen grund");
        }
        else if (ejer==null){
            if (sp.konto > pris){
                if (sp.spørgsmål("købe "+navn+" for "+pris)){
                    sp.transaktion( -pris );
                    ejer=sp;
                }
            }
            else sp.besked("Du har ikke penge nok til at købe "+navn);
        }
        else{
            sp.besked("Leje: "+grundleje);
            sp.betal(ejer, grundleje);
        }
    }
}

如果您想在另一个类中使用该值,请尝试为该值slag:创建一个setter和getter

 private int slag;
public int getSlag() {
    return slag;
}
public void setSlag(int slag) {
    this.slag = slag;
}

您可以在具有值slag的第一个类中这样做,尝试添加上面的代码,在第二个类中,您希望在主方法中使用它,将其设置为:

 class1 cl1 = new class1();
    cla1.setSlag(999);

以及代码中的该值,使用getSlag()检索该值。有关更多信息,请访问链接

最新更新