Sobes.tech
Middle

Неге Integer.MAX_VALUE плюс бирөө Integer.MIN_VALUE менен барабар?

sobes.tech AI

AIден жооп

Integer.MAX_VALUE — бул Javaда 32-биттик белгилүү бүтүн түрдүн эң чоң мааниси. Ал 2<sup>31</sup> - 1ге барабар.

Эске тутуу:

Integer.MAX_VALUE: 0111...1111 (31 бир)

Бирди кошкондо, ашып кетүү болот:

Integer.MAX_VALUE + 1:

  0111...1111
+ 0000...0001
------------
  1000...0000

Эң жогорку бит 1 болот, бул белгилүү түрдө терс санды көрсөтөт. Эки толуктоо (Javaда терс сандарды көрсөтүүнүн стандарттык түрү) үчүн, 1000...0000 эң кичинекей терс санга, яғни Integer.MIN_VALUE (-2<sup>31</sup>)га туура келет.

Бул жүрүм-турум Java жана көптөгөн башка тилдерде эки толуктоо колдонулганда стандарттуу болуп саналат.