java short tipus

Kezdőlap Fórumok Programozás java short tipus

4 bejegyzés megtekintése - 1-4 / 4
  • Szerző
    Bejegyzés
  • #2037167
    kelemengabor
    Felhasználó

      ha jól tudom, a short az 1 bájtos egészet jelent, vagyis, felvehet mondjuk -128 és +127 közti értéket (iirc, régen volt, de példának jó). Te összeadsz két ilyet, és az eredményt is ugyanilyen típusba akarod rakni. Ha pl 2+3 az érték, akkor nincs is baj, ennek eredménye befér a short típusba. Node, mi van, ha a=100, b=100? Két normális short típusú érték, de ha összeadod, azt már nem lehet 1 bájton ábrázolni. Erre odafigyel a java, ezért jelez hibát.

      #2037168
      gyuri2012
      Felhasználó
        kelemengabor wrote:
        ha jól tudom, a short az 1 bájtos egészet jelent, vagyis, felvehet mondjuk -128 és +127 közti értéket (iirc, régen volt, de példának jó). Te összeadsz két ilyet, és az eredményt is ugyanilyen típusba akarod rakni. Ha pl 2+3 az érték, akkor nincs is baj, ennek eredménye befér a short típusba. Node, mi van, ha a=100, b=100? Két normális short típusú érték, de ha összeadod, azt már nem lehet 1 bájton ábrázolni. Erre odafigyel a java, ezért jelez hibát.

        hat… a peldamban 2+3 van, tehat akkor nem jelez hibat? de jelez.
        ha esetleges tulcsordulas miatt csinalja.. jo otlett lenne, de akkor miert csak shortnal csinalja? ket int osszege is tulcsordulhat, megis
        int a=2, b=3, c; c=a+b;
        jo… tehat miert csak short-nal gondol erre? (ha erre gondol)

        #2037169
        gyuri2012
        Felhasználó
          #1881361
          csaba
          Felhasználó

            Sziasztok!
            van egy igen egyszeru java-s kerdesem:
            short a=2, b=3, c; c=a+b;
            miert hibas? az a+b kifejezes tipusa miert lesz int? ez valami short specifikus dolog?

            Tehat azt furcsallom es kerdezem, hogy short+short kif. tipusa miert int…
            es akkor int+int miert nem long?

            Tudom hogy c=(short)(a+b) mukodik, de nem ertem, hogy milyen kulonbseg van az int, es a short tipus kozott azt leszamitva, hogy az utobbi kevesebb byteon van abrazolva…

            Szoval ez mellozi a logikat, es tudomasul kell venni, hogy igy van, vagy van valami oka, amire en nem jottem ra?

            Megkerdeztem mar tobb irc csatornan, de sehol nem kaptam ertelmes valaszt… mint pl: „igen, ez short specifikus dolog”, vagy „azert van igy, mert…”
            A kerdes azert fontos, mert e pelda ellentmond annak a szabalynak, hogy amit a tobbi elemi tipusnal hasznal, (szerintem)(ill. nem probaltam vegig az oszeset), de igy erhetnek meglepetesek…, amiket kerulni szeretnek!

          4 bejegyzés megtekintése - 1-4 / 4
          • Be kell jelentkezni a hozzászóláshoz.