Негизги айырма – калкып чыгуу менен кош
Программалоодо маалыматтарды сактоо талап кылынат. Маалыматтар эстутумда сакталат. Маалыматтарды сактаган эстутум жерлери өзгөрмөлөр деп аталат. Ар бир эстутумдун орду белгилүү бир типтеги маалыматтарды сактай алат. Ар бир маалымат түрү үчүн эс өлчөмү ар кандай. Python сыяктуу программалоо тилдеринде программистке өзгөрмөнүн түрүн жарыялоонун кереги жок. Java сыяктуу программалоо тилдеринде программист өзгөрмөнүн түрүн жарыялоосу керек. Char, int, float жана double сыяктуу бир катар маалымат түрлөрү бар. char маалымат түрү бир символдун маанисин сактоо үчүн колдонулат. int маалымат түрү сандык маанилерди ондук чекиттерсиз сактоо үчүн колдонулат. Float жана кош маалымат түрлөрү ондук чекиттер менен сандык маанилерди сактоо үчүн колдонулат. Бул макалада float жана double ортосундагы айырма талкууланат. Float менен double ортосундагы негизги айырма: float бир тактыктагы 32 бит IEEE 754 калкыма чекиттүү маалымат түрү, ал эми double эки тактыктагы 64 бит IEEE 754 калкыма чекиттүү маалымат түрү.
Float деген эмне?
Калкыма – бул бир тактыктагы 32 биттик калкыма чекит. Бул Java сыяктуу программалоо тилдери тарабынан колдоого алынган алдын ала аныкталган маалымат түрү. Float өзгөрмөсүн жарыялоо үчүн 'float' ачкыч сөзү колдонулат. Ошентип, аны метод аттары жана өзгөрмө аттары сыяктуу идентификатор аттары үчүн колдонууга болбойт. Төмөнкү программаны караңыз.
01-сүрөт: Float маалымат түрү менен Java программасы
Жогорудагы программага ылайык, сан өзгөрмө, ал калкыма чекиттүү номерди сактай алат. Бул жерде -20,5 ордуна -20,5f колдонулат. -20,5 кош литерал. Компилятордун маанини флоат катары сактоосун көрсөтүү үчүн, программист f же F деп жазышы керек.
Кош деген эмне?
Кош - кош тактыктагы 64 биттик калкыма чекит. Бул алдын ала аныкталган маалымат түрү. Кош өзгөрмөнү жарыялоо үчүн "кош" ачкыч сөзү колдонулат. Ошондуктан, аны метод аттары жана өзгөрмө аттары сыяктуу идентификатор аттары үчүн колдонууга болбойт. Төмөнкү программаны караңыз.
Сүрөт 02: Кош маалымат түрү менен Java программасы
Жогорудагы программага ылайык, сан double түрүндөгү өзгөрмө. Номерди басып чыгаруу -20,5 деп чыгууну берет. Маани сактоо үчүн эстутумда 64 бит керек. Программист -20,5 деп жазылса, ал кош болуп эсептелет. Ал ошондой эле -20.5d деп жаза алат. "d" деп жазуу милдеттүү эмес.
Типти кастинг маалымат түрлөрү боюнча аткарылышы мүмкүн. Бул бир маалымат түрүн башка маалымат түрүнө айландыруу процесси. Чоңураак маалымат түрүнө кичирээк маалымат түрүн дайындоодо, кастинг талап кылынбайт. Кеңейтүү байт, кыска, int, узун, калкыма, кош иретте болот. Кичинекей маалымат түрүнө чоңураак маалымат түрүн ыйгарууда, кастингди аткаруу керек.
03-сүрөт: Casting
Жогорудагы программага ылайык, num1 жана num2 калкыма маалымат түрлөрүнө ээ. Жыйынтык өзгөрмө суммага дайындалат. Бул флот. Float double менен салыштырганда кичирээк маалымат түрү болгондуктан, аны түргө чыгаруусу жок эле кош өзгөрмөнүн санына түздөн-түз дайындоого болот.
x жана y кош берилиштердин түрлөрүн сактай алат. Жыйынтык z өзгөрмөсүнө дайындалат. Ошондой эле эки эсе сактай алат. Кичирээк маалымат түрүнө чоңураак маалымат түрүн дайындоо үчүн типти кастинг талап кылынат. Ошондуктан, кош маанини float өзгөрмөсүнө сактоо үчүн, типти кастинг кылуу керек, анткени double бул floatка караганда чоңураак маалымат түрү.
Float жана double ортосунда кандай окшоштуктар бар?
- Float жана double экөө тең Java сыяктуу программалоо тилдеринде колдоого алынган алдын ала аныкталган маалымат түрлөрү.
- Калкуучу жана кош түрлөрү тең валюта сыяктуу тактык үчүн колдонулбайт.
Float жана double ортосунда кандай айырма бар?
float vs double |
|
Калкыма – бир тактыктагы 32 бит IEEE 754 калкыма чекиттүү берилиштер түрү. | Double - кош тактыктагы 64 бит IEEE 754 калкыма чекиттүү маалымат түрү. |
Байттардын саны | |
Флот 4 байт узун. | Дос 8 байт узун. |
Демейки баалуулуктар | |
Калктын демейки мааниси 0,0f. | Double параметринин демейки мааниси 0,0күн. |
Ачкычтуу сүйлөм | |
"float" ачкыч сөзү калкыма маанини жарыялоо үчүн колдонулат. | "кош" ачкыч сөзү кош маанини жарыялоо үчүн колдонулат. |
Талап кылынган эстутум | |
Калкма эки эсе азыраак эстутумду талап кылат. | Дос флотка караганда көбүрөөк эстутумду талап кылат. |
Корытынды – калкып чыгуу жана кош
Программалоодо маалыматтарды сактоо зарыл. Бул маалыматтар эстутум жерлеринде сакталат жана өзгөрмөлөр деп аталат. Ар бир өзгөрмө белгилүү бир типтеги маалыматтарды сактайт. Int, char, double жана float сыяктуу маалымат түрлөрү бар.float менен double ортосундагы айырма, float бир тактыктагы 32 бит IEEE 754 калкыма чекит, ал эми double эки тактыктагы 64 бит IEEE 754 калкыма чекит болгон маалымат түрү.