Компьютерууд, Програмчлал
Програмчлал: Java. Өгөгдлийн төрөл
Мэдээллийн төрлийг гурван бүрэлдэхүүн хэсгээр тодорхойлно:
- Утга эсвэл обьектын багц;
- Багц дахь бүх утгыг ашиглаж болох үйл ажиллагааны багц;
- Тэдний хадгалалтыг тодорхойлдог өгөгдлийг танилцуулах.
Java дээр ямар төрлийн өгөгдөлүүд байдаг вэ?
Програмчлалын хэл нь урьдчилан тодорхойлсон зарим төрлийн форматтай байдаг бөгөөд програмчид өөрсдөө өөрчлөн тохируулах боломжийг олгодог.
Жава дээр өгөгдлийн төрлүүд нь команд болон лавлагааны төрлүүдэд хуваагддаг.
"Команд" гэдэг нь цаашид хуваах боломжгүй юм. Програмчлалын хэлийг өөрчлөх эсвэл өөрчлөх боломжгүй байна. Энэ төрлийн өгөгдлийг команд болон бусад хэрэглэгчийн тодорхойлсон төрлөөр тайлбарласан болно.
Энгийн төрлийн хувьсагч утгатай бөгөөд жишиг хувьсагч нь санах ойн объектыг агуулна.
Java хэл. Өгөгдлийн төрөл: цаг ба огноо
Нийлмэл өгөгдөл нь анги, интерфэйс, массив зэрэгт хуваагддаг. Интерфэйсийн төрөл нь хийсвэр аргууд ба тогтмолууд юм. Жава дахь огноо, цагийн өгөгдлийн төрлийг Огноо () байгуулагчаар тодорхойлсон:
- D = шинэ огноо ().
Холбоосын жишээ нь бас тэмдэгт юм.
Java хэл. Өгөгдлийн төрлүүд:
Түлхүүр нь Java сан дотор тодорхойлогдсон класс юм. Энэ нь текст (тэмдэгтүүдийн дараалал) ажиллахад хэрэглэгддэг.
Стандартаар холбох хувьсагчийн тайлбарыг дараах байдлаар бичнэ: String str.
Ийм хувьсагчийн обьектыг ишлэл өгөхийн өмнө та үүнийг шинэ оператортой үүсгэх ёстой. Жишээлбэл, та "Сайн" гэсэн үсгээр String-ийн объектыг үүсгэж болно:
- Str = шинэ String ("Сайн уу").
Энэ кодыг гүйцэтгэхэд юу тохиолдох вэ? Эхлээд санах ой хуваарилагдаж, нэр нь энэ санах ойтой холбоотой байна. Энэ нь энгийн хувьсагч зарлахаас өөр юм. Хоёр дахь кодын фрагмент нь String объектыг "Сайн" текстийг санах ойд үүсгэж, түүнд (эсвэл санах ойн хаяг) лавлахыг хадгалдаг.
Лавлах өгөгдлийн төрлүүд Java нь таныг нэг хувьсагч дээр хадгалагдсан обьектийг лавлагаа өгөх боломжийг нээж өгдөг. Аль аль нь санах ойд байгаа ижил объектыг үздэг. Үүнийг дараах байдлаар биелүүлж болно:
- String str1;
- String str2;
- Str1 = шинэ String ("Сайн уу");
- Str2 = str1;
Ямар ч жишиг хувьсагчид зааж өгч болно. Энэ нь аливаа объектод хамаарахгүй.
String объектыг шинэ оператор ашиглан үүсгэнэ. Гэхдээ мөрүүдийг ихэвчлэн ашигладаг тул үүнийг бий болгох хялбар арга бий. Бүх тэмдэгт мөрүүд, өөрөөр хэлбэл давхар хашилтанд бичигдсэн тэмдэгтүүдийн дарааллыг String обьектууд гэж үздэг. Тиймээс шинэ операторын оронд та тэмдэгт мөрүүдийг ашиглах боломжтой:
- String str1 = "Сайн байна уу".
Команд өгөгдлийн төрөл Java - байт, богино, int, урт, char, float, double ба boolean. Тэд логик болон тоон гэсэн хоёр ангилалд ордог. Сүүлд нь бүхэл тоо болон хөвөгч цэгийг хувааж болно.
Java өгөгдлийн бүхэл тоонууд нь тоонууд нь бүхэл тоо байна. Тэдгээрийн таван нь: байт, богино, урт, урт, char.
Int
Int нь 32-бит гарын үсэг зурсан командын өгөгдлийн төрөл юм. Хувьсагч нь 32 бит санах ойг шаарддаг. Зөвшөөрөгдөх хүрээ нь -2147483648 -аас 2147483647 (-231-231-1) байна. Энэ муж дахь бүх бүхэл тоо нь бүхэл тоон утга эсвэл тогтмол байна. Жишээ нь, 10, -200, 0, 30, 19 нь literals int. Тэдгээрт int:
- Int num1 = 21;
Бүхэл текстийг хоёртын, арван нэгэн, аравтын, арван зургаат хэлбэрээр илэрхийлж болно.
Хэрэв тэг нь тэгээс эхэлж, хамгийн багадаа хоёр оронтой тоо байвал үүнийг octal хэлбэрээр бичсэн гэж үзнэ. 0 ба 00 нь ижил утгыг илэрхийлнэ.
16-тын бүх аналог нь 0х эсвэл 0х-ээр эхэлсэн бөгөөд тэдгээр нь дор хаяж нэг арван зургаа дахь оронтой байх ёстой.
- Int num1 = 0x123.
Хоёртын форматын үндсэн утга нь 0б эсвэл 0б-ээс эхэлнэ.
- Int num1 = 0b10101.
Урт
Энэ бол 64 битийн гарын үсэг бүхий команд хэлбэр юм. Тооцооны үр дүн нь хүрээний хязгаараас хэтрэх үед хэрэглэгдэнэ. Урт муж нь -2 63 - 2 63 - 1. Энэ муж дахь бүх бүхэл тоонууд нь урт төрлийн литералууд юм.
Java дахь int ба урт өгөгдлийн төрлүүдийг ялгахын тулд сүүлчийн төрөл нь L эсвэл l-ээр төгсдөг.
Бүх урт хугацааны литурууд нь octal, hexadecimal, болон хоёртын хэлбэрээр илэрхийлэгддэг.
Урт урт нь хувьсагчийн уртад оногдоход, Java хөрвүүлэгч нь оноогдсон утгыг шалгаж хүлээн зөвшөөрөгдөх хүрээн дотор байгаа эсэхийг шалгана; Үгүй бол эмхэтгэлтийн алдаа гардаг.
Интелийн хүрээ нь уртаас бага байх тул int хувьсагчийн утга нь урттай хувьсах хувьсагчид өгөгддөг. Гэхдээ интернетийн хүрээнд ч гэсэн буцалтгүй даалгавар нь боломжгүй юм. Үүний тулд тодорхой заалт ашиглаж байна:
- Num1 = (int) num2;
Байт
Бөөр гэдэг нь 8-битийн бүхэл тоон командын төрөл юм. Түүний хүрээ нь -128 - 127 (-2 7 - 2 7 - 1). Энэ нь Java дээр байгаа хамгийн бага бүхэл тоон төрөл юм. Програм нь -128 -аас 127 хүртэлх мужид олон утгыг ашигладаг, эсвэл хоёртын өгөгдөлтэй ажиллахад ихэвчлэн байтын хувьсагчуудыг ашигладаг. Интернетийн урт болон урттай адилгүй тул байт логикууд байхгүй. Гэсэн хэдий ч, та байтын хувьсагч дээр ямар ч intitle -ийг оноож өгч болно, учир нь энэ нь байт хязгаарыг давж гардаг.
Хэрэв хувьсагчийн утга нь хязгаараас хэтэрсэн бол Java нь хөрвүүлэгч алдаа гаргах болно.
Үүнээс гадна, та зөвхөн int хувьсагч дээр хадгалсан утга биш, гэхдээ энэ нь нарийвчлалын алдагдлыг үүсгэж болзошгүй учраас Энэ нь тодорхой дамжуулалт шаарддаг.
- B1 = (байт) num1.
Богино
Энэ нь 16 битийн гарын үсэг бүхий бүтэн төрлийн өгөгдлийн төрөл юм. Түүний хүрээ нь -32768-ээс 32767 (эсвэл -215-2-15-1) байна.
Ихэвчлэн тодорхой хязгаараас хэтрэхгүй олон тооны утгыг ашигладаг үед богино хувьсагчийн хэрэгцээ үүсдэг. Богинохонгүй байна, гэхдээ хүрээний богино зайнд ямар ч literal int ажиллуулах боломжтой. Биттийн хувьсагчийн утга нь үргэлж өгөгддөг. Богино эсвэл хувьсагчийг онооход зориулсан бусад дүрэм нь байтатайгаа ижил байна.
Char
Char нь 16-битийн unsigned primitive өгөгдлийн төрөл бөгөөд Unicode тэмдэгтийг илэрхийлнэ. Тэмдэг байхгүй бол хувьсагч нь сөрөг утга байхгүй байж болно гэсэн үг юм. Энэ муж нь 0-ээс 65535 хүртлэх бөгөөд энэ нь Unicode тэмдэгтийн нэгэн адил байна. Шууд утга нь char утгаыг илэрхийлж, ийм хэлбэрээр илэрхийлэгдэж болно:
- Нэг үсгээр тэмдэглэгдсэн тэмдэгт;
- Хяналтын тэмдэгтүүдийн дараалал;
- Юникод хяналтын тэмдэгтүүдийн дараалал;
- Octal control тэмдэгтүүдийн дараалал.
Тэмдэглэгээг үүнийг нэг ишлэлд оруулж болно: char C1 = 'A'. Давхар ишлэлүүд нь мөрийн хувьсагчийн тэмдэгтийг агуулж чаддаггүй ч гэсэн тэмдэгт мөрийг агуулдаггүй. Энгийн хувьсагчийн лавлагаа өгөгдөөгүй тул энэ нь боломжгүй юм. Бүх тэмдэгт мөрүүд нь String ангийн обьектууд бөгөөд тиймийн тул, ишлэлүүд нь тэмдэгтүүд нь primitive төрөлд хамаардаг.
Хяналтын дарааллаар илэрхийлсэн утга нь нэг төрлийн тэмдэгт бүхий backslash хэлбэрээр бичигдсэн байна. Нийт 8 байна: '\ n', '\ r', '\ f', '\ b', '\ t', '\\', '\ "', '\' '.
Unicode-ийн хяналтын дараалал нь \ 'uxxxx' гэсэн хэлбэртэй бөгөөд энд \ u (жижиг үсгээр дагуулсан backslash) эхлэлийг нь зааж өгдөг бөгөөд xxxx Unicode систем дэхь тэмдэгтийн кодын 4-тын зургаан оронтой тоог зурна. Жишээлбэл, 'A' нь аравтын бутархай системд 65, 16-т 41 байна. Тиймээс энэ тэмдэгийг '\ u0041' гэж төлөөлж болно.
Octal control дарааллыг 'nnn' хэлбэрээр бичсэн бөгөөд энд n нь octal дугаар (0-7). Үүнд: \ 000'-аас \ 377 ', 377 8 нь 255 10 байна. Тиймээс энэ нь 0-ээс 255 хүртэлх кодтой тэмдэгтийг илэрхийлэхэд хэрэглэгддэг бөгөөд энэ нь бусад програмчлалын хэлүүдтэй зохицоход зайлшгүй шаардлагатай. Энд дөрвөн екс хэмжигдэхүүн шаардлагатай Unicode дараалалаас ялгаатай нь та энд 1, 2, эсвэл 3 окальнуудыг ашиглаж болно: '\ n', '\ nn' эсвэл '\ nnn'.
Бүүлийн төрөл
Бохьан нь үнэн (үнэн) болон худал (худал) гэсэн 2 утгатай. Тэднийг Boolean literals гэж нэрлэдэг. Логик хувьсагч нь өөр хэлбэр рүү шидэгдэж болохгүй. Java нь boolean-ийн хэмжээг тодорхойлдоггүй бөгөөд энэ нь виртуал Java машины тусгай хэрэгжүүлэлтээс хамаарна.
Java Floating Point Өгөгдлийн төрөл
Компьютерийн санах ойд фрагмент хэсгийг агуулж буй дугаарыг цэгийн өмнө болон дараа байршсан тогтмол тооны дүрслэлд байрлуулж эсвэл байрлалыг нь зааж болно. Цифрүүдийн тоо өөрчлөгдөх тул "хөвөх цэг" гэж нэрлэдэг.
Java хэл дээр 32 битийн өгөгдлийн төрлийг ашигладаг. IEEE 754 стандартын дагуу энэ нь жишээлбэл, 1.4 x 10 -45 ба 3.4 x 10 38 гэсэн тоонуудыг эерэг, сөрөг аль алиныг төлөөлөх боломжтой.
F эсвэл F-д төгссөн бүх бодит тоонуудыг float-literals гэж нэрлэдэг. Тэдгээрийг аравтын тооны хэлбэрээр, шинжлэх ухааны тэмдэглэгээний хэлбэрээр танилцуулж болно. Жишээ нь:
- Float f1 = 3.25F;
- Flo2 f2 = 32.5E-1F;
- Flo3 f3 = 0.325E + 1F.
Энэ төрөл нь 2 тэгийг заана: + 0.0F (эсвэл 0.0F) ба -0.0F. Харьцуулах зорилгоор, тэгийг мөн адил тэнцүү гэж үзнэ. Үүнээс гадна тэрээр хоёр төрлийн хязгааргүй хязгаарыг тогтоожээ: эерэг ба сөрөг. Зарим үйл ажиллагааны үр дүнгүүд (жишээлбэл, 0.0F-ийн 0.0F-ийн хуваагдал) -ийг тодорхойлдоггүй ба NaN-ийн тусгай утгатай байна.
Давхар нарийвчлал
Хөвөгч цэгийг хадгалахын тулд хоёр дахин 64 бит ашигладаг. Давтацын тоо нь 4.9 x 10 -324 ба 1.7 x 10 308 эерэг ба сөрөг утгуудыг илэрхийлж болно.
Бодит бүх тоонууд нь анхдагчаар давхар утгатай. Хэрвээ хүсвэл тэдгээр нь төгсгөлийн D буюу D дагаварыг тодорхой зааж өгч болно, жишээ нь, 19.27d. Давхар утга нь аравтын бутархай хэлбэрээр болон шинжлэх ухааны тэмдэглэгээг илэрхийлж болно.
Similar articles
Trending Now