[{"data":1,"prerenderedAt":268},["ShallowReactive",2],{"tag-labels":3,"site-header":4,"article-tipe-data-pada-bahasa-java-en":69},{},{"featuredPost":5,"navigations":26},{"id":6,"title":7,"title_en":8,"slug":9,"excerpt":10,"excerpt_en":8,"has_translation":11,"published_at":12,"reading_time":13,"hidden_from_listing":11,"tags":14,"thumbnail_image":8,"og_image":19,"series":20,"authors":25},110,"Ketika Pilih Framework Cuma Biar Kelihatan Beda",null,"ketika-pilih-framework-cuma-biar-kelihatan-beda","Terakhir kali kamu milih framework atau library baru, itu karena masalahmu butuh alat itu, atau karena alatnya kedengaran keren dan belum banyak yang pakai? Pertanyaan ini nggak enak dijawab. Soalnya keputusan teknologi sering diambil dengan alasan yang nggak pernah ditulis di dokumen teknis mana pun.",false,"2026-10-06T15:25:21.000Z",5,[15,16,17,18],"karier","framework","opini","pengalaman","\u002Fog\u002Fketika-pilih-framework-cuma-biar-kelihatan-beda.png",{"id":21,"title":22,"title_en":23,"slug":24},9,"Artikel","Articles","all",[],[27,43,64],{"collection":28,"item":29},"series",{"__typename":28,"title":22,"title_en":23,"slug":24,"children_series":30},[31,35,39],{"title":32,"title_en":33,"slug":34},"Kecerdasan Artifisial","Artificial Intelligence","kecerdasan-artifisial",{"title":36,"title_en":37,"slug":38},"Konsep Dasar Pemrograman","Programming Fundamentals","konsep-dasar-pemrograman",{"title":40,"title_en":41,"slug":42},"Algoritma dan Struktur Data","Algorithms and Data Structures","algoritma-struktur-data",{"collection":28,"item":44},{"__typename":28,"title":45,"title_en":45,"slug":46,"children_series":47},"Tutorial","tutorial",[48,52,56,60],{"title":49,"title_en":50,"slug":51},"Belajar Python","Learning Python","belajar-python",{"title":53,"title_en":54,"slug":55},"Belajar Golang","Learning Go","belajar-golang",{"title":57,"title_en":58,"slug":59},"Belajar Java","Learning Java","belajar-java",{"title":61,"title_en":62,"slug":63},"Belajar Pascal","Learning Pascal","belajar-pascal",{"collection":28,"item":65},{"__typename":28,"title":66,"title_en":66,"slug":67,"children_series":68},"Lab","lab",[],{"article":70,"renderedBody":145,"renderedTakeaway":146,"latestArticles":147,"toc":251},{"id":71,"title":72,"title_en":8,"slug":73,"excerpt":74,"excerpt_en":8,"has_translation":11,"published_at":75,"reading_time":76,"hidden_from_listing":11,"tags":77,"thumbnail_image":8,"og_image":82,"series":83,"authors":139,"body_locale":142,"available_locales":143,"body":144,"takeway":8,"prerequisite":8},56,"Tipe Data pada Bahasa Java","tipe-data-pada-bahasa-java","Tipe data adalah atribut yang menempel pada sebuah data untuk menentukan perlakuan terhadap data tersebut.","2022-12-29T00:00:00.000Z",3,[78,79,80,81],"java","tipe-data","konsep","dasar","\u002Fog\u002Ftipe-data-pada-bahasa-java.png",{"id":84,"title":85,"title_en":86,"slug":87,"description":88,"description_en":89,"articles":90,"children_series":128,"parent_series":129},22,"Variabel, Tipe Data, dan Operasi","Variables, Types, and Operations","java-variabel-tipe-data","Tipe data di Java harus jelas dari awal. Kita bahas tipe data dasar, plus integer dan float lebih dalam.","In Java the type has to be clear from the start. We go through the primitive types, then integers and floats in more depth.",[91,100,114],{"id":71,"title":72,"title_en":8,"slug":73,"excerpt":74,"excerpt_en":8,"has_translation":11,"published_at":75,"reading_time":76,"hidden_from_listing":11,"tags":77,"thumbnail_image":8,"og_image":82,"series":92,"authors":93},{"id":84,"title":85,"title_en":86,"slug":87},[94],{"authors_id":95},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},1,"Daffa Izzuddin","izzudd","Writer",{"id":101,"title":102,"title_en":8,"slug":103,"excerpt":104,"excerpt_en":8,"has_translation":11,"published_at":105,"reading_time":106,"hidden_from_listing":11,"tags":107,"thumbnail_image":8,"og_image":109,"series":110,"authors":111},57,"Mengenal Tipe Data Integer pada Java","mengenal-tipe-data-integer-pada-java","Integer, sesuai namanya merupakan tipe data yang hanya bisa menampung bilangan bulat saja (negatif, nol, dan positif)","2023-01-13T00:00:00.000Z",6,[78,79,108],"integer","\u002Fog\u002Fmengenal-tipe-data-integer-pada-java.png",{"id":84,"title":85,"title_en":86,"slug":87},[112],{"authors_id":113},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},{"id":115,"title":116,"title_en":8,"slug":117,"excerpt":118,"excerpt_en":8,"has_translation":11,"published_at":119,"reading_time":120,"hidden_from_listing":11,"tags":121,"thumbnail_image":8,"og_image":123,"series":124,"authors":125},58,"Mengenal Tipe Data Float pada Java","mengenal-tipe-data-float-pada-java","Float atau floating point merupakan tipe data yang dapat menampung literal bilangan desimal dan pecahan.","2023-02-15T00:00:00.000Z",4,[78,79,122],"float","\u002Fog\u002Fmengenal-tipe-data-float-pada-java.png",{"id":84,"title":85,"title_en":86,"slug":87},[126],{"authors_id":127},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},[],{"id":130,"title":57,"title_en":58,"slug":59,"parent_series":131,"children_series":132},13,{"id":96,"title":45,"title_en":45,"slug":46},[133,138],{"id":134,"title":135,"title_en":136,"slug":137,"cover_image":8},21,"Berkenalan dengan Java","Getting Started with Java","java-intro",{"id":84,"title":85,"title_en":86,"slug":87,"cover_image":8},[140],{"authors_id":141},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},"id",[142],"Pada kesempatan kali ini kita akan coba berkenalan sekilas dengan tipe data pada Bahasa Java. Kali ini kita tidak akan ngoding dulu, fokus kenalan aja.\n\n## Sekilas Tentang Tipe Data\n\nFYI, Java masuk ke dalam tipe bahasa yang ***strongly typed***. Artinya programmer harus memberi tipe data secara **eksplisit** pada tiap variabel yang dibuat.\n\nNah, sekarang apa itu tipe data dan kenapa harus ada?\n\nTipe data adalah atribut yang menempel pada sebuah data. Atribut ini nantinya yang akan menentukan perlakuan apa saja yang bisa dilakukan terhadap data tersebut.\n\nContoh saja, kita punya 2 data berupa umur seseorang dan pekerjaan seseorang.\n\nKita tahu bahwa umur pasti akan bertambah tiap orang tersebut ulang tahun, dan pastinya tidak bisa diubah seenak jidat.\n\nDi sisi lain, pekerjaan seseorang bisa berubah-ubah, tapi pekerjaan itu tidak mungkin bertambah tiap dia ulang tahun (kan?).\n\nNah, 2 data ini bisa dikatakan punya tipe yang berbeda. Ini karena perlakuan yang dapat dikenakan pada suatu data tidak selalu dapat dilakukan pada data lainnya.\n\nYah, semoga dapat gambarannya lah ya.\n\n## Jenis Tipe Data pada Java\n\nSecara umum, terdapat 2 jenis tipe data pada Java yaitu tipe data primitif dan bentukan. Tipe bentukan ini biasa disebut dengan objek.\n\nKita coba bahas satu-satu.\n\n### Tipe data Primitif\n\nDengar kata primitif jangan langsung mengarah ke manusia purba ya, dalam pemrograman juga dipakai istilah ini.\n\nTipe data primitif merupakan tipe data yang sudah ada dari sananya. Sudah disediakan oleh bahasa pemrograman, bahkan sudah disediakan oleh hardware yang kita punya. Kebanyakan bahasa pemrograman punya jenis primitif yang sama.\n\nKita mungkin sudah pernah menyinggung hal ini ketika membahas tentang [variabel pada java](https:\u002F\u002Fwww.invasikode.com\u002Fvariabel-dan-literal-pada-bahasa-java). Tapi tidak apa-apa kita coba bahas lagi supaya tidak lupa.\n\n | **Tipe Data** | **Deskripsi**                             | **Nilai**                   | **Ukuran** |\n | ------------- | ----------------------------------------- | --------------------------- | ---------- |\n | **boolean**   | Tipe data logika true false               | true, false                 | 1 bit      |\n | **byte**      | Penyimpan data mentah (karakter, dll)     | -128 - 127                  | 8 bit      |\n | **char**      | Penyimpan karakter unicode                | karakter unicode            | 16 bit     |\n | **short**     | Bilangan bulat jarak pendek               | -32768 - 32767              | 16 bit     |\n | **int**       | Bilangan bulat jarak menengah             | $-2^{31}$ sampai 2147483647 | 32 bit     |\n | **long**      | Bilangan bulat jarak panjang              | $-2^{63}$ sampai $2^{63}-1$ | 64 bit     |\n | **float**     | Desimal presisi 7 digit di belakang koma  | presisi 7 digit             | 32 bit     |\n | **double**    | Desimal presisi 16 digit di belakang koma | presisi 16 digit            | 64 bit     |\n\nNah, dari tipe data primitif tersebut kita bisa bagi lagi menjadi beberapa kelompok yaitu:\n\n- **Logika** — boolean\n- **Karakter** — char\n- **Integer** — byte, short, int, dan long\n- **Float** — float, dan double\n\nUntuk lebih jelasnya akan kita bedah satu-satu pada kesempatan selanjutnya.\n\n### Tipe data Bentukan (Objek)\n\nSelanjutnya ada tipe data bentukan. Seperti namanya, tipe data ini dibentuk sendiri oleh programmer dan bisa terdiri dari gabungan data primitif.\n\nSebagai bahasa OOP, semua hal pada Java adalah Objek. Objek ini merupakan salah satu jenis dari tipe data bentukan. Dalam sebuah objek kita bisa memberikan atribut sesuai kebutuhan kita.\n\nBahkan, tiap data primitif punya padanan objeknya. Untuk membedakan mana yang primitif mana yang objek tinggal kita lihat huruf awalnya saja. Kalau diawali kapital berarti itu objek, sebaliknya kalau diawali huruf kecil maka itu primitif.\n\nContohnya saja tipe data `boolean`, padanan objeknya adalah `Boolean`. Kalau `double` padanan objeknya adalah `Double`. Terakhir yang agak lain ada `int` dengan padanan objeknya yaitu `Integer`.\n\n> Penamaan Objek dengan awalan kapital ini merupakan **typing convention** alias aturan penulisan yang disarankan pada bahasa Java.\n\nTipe bentukan yang mungkin sering kita pakai adalah `String`. Tipe data ini masuk ke tipe bentukan karena dia merupakan gabungan dari beberapa data bertipe `char`.\n\nSelain Objek, terdapat beberapa jenis tipe bentukan yang bisa kita buat diantaranya:\n\n- **class** — Template untuk pembuatan objek\n- **interface** — Template untuk pembuatan class\n- **enum** — Tipe data dengan nilai valid yang ditentukan oleh programmer\n- **array** — Kumpulan dari beberapa data yang dapat diakses dengan indeks\n\nLebih lanjut tentang class, interface, dan enum akan kita bahas lebih lanjut pada bagian OOP pada Java.\n\n## Selanjutnya\n\nSetelah kita kenalan, selanjutnya kita akan coba bahas lebih dalam lagi untuk tiap tipe data. Kita akan bahas tentang aturan-aturan, operasi apa yang bisa dilakukan, hingga cara mengubah tipe data menjadi tipe yang lainnya.\n\nSemoga bermanfaat, selamat berkoding ria 👋\n","\u003Cp>Pada kesempatan kali ini kita akan coba berkenalan sekilas dengan tipe data pada Bahasa Java. Kali ini kita tidak akan ngoding dulu, fokus kenalan aja.\u003C\u002Fp>\n\u003Ch2 id=\"sekilas-tentang-tipe-data\">Sekilas Tentang Tipe Data\u003C\u002Fh2>\n\u003Cp>FYI, Java masuk ke dalam tipe bahasa yang \u003Cem>\u003Cstrong>strongly typed\u003C\u002Fstrong>\u003C\u002Fem>. Artinya programmer harus memberi tipe data secara \u003Cstrong>eksplisit\u003C\u002Fstrong> pada tiap variabel yang dibuat.\u003C\u002Fp>\n\u003Cp>Nah, sekarang apa itu tipe data dan kenapa harus ada?\u003C\u002Fp>\n\u003Cp>Tipe data adalah atribut yang menempel pada sebuah data. Atribut ini nantinya yang akan menentukan perlakuan apa saja yang bisa dilakukan terhadap data tersebut.\u003C\u002Fp>\n\u003Cp>Contoh saja, kita punya 2 data berupa umur seseorang dan pekerjaan seseorang.\u003C\u002Fp>\n\u003Cp>Kita tahu bahwa umur pasti akan bertambah tiap orang tersebut ulang tahun, dan pastinya tidak bisa diubah seenak jidat.\u003C\u002Fp>\n\u003Cp>Di sisi lain, pekerjaan seseorang bisa berubah-ubah, tapi pekerjaan itu tidak mungkin bertambah tiap dia ulang tahun (kan?).\u003C\u002Fp>\n\u003Cp>Nah, 2 data ini bisa dikatakan punya tipe yang berbeda. Ini karena perlakuan yang dapat dikenakan pada suatu data tidak selalu dapat dilakukan pada data lainnya.\u003C\u002Fp>\n\u003Cp>Yah, semoga dapat gambarannya lah ya.\u003C\u002Fp>\n\u003Ch2 id=\"jenis-tipe-data-pada-java\">Jenis Tipe Data pada Java\u003C\u002Fh2>\n\u003Cp>Secara umum, terdapat 2 jenis tipe data pada Java yaitu tipe data primitif dan bentukan. Tipe bentukan ini biasa disebut dengan objek.\u003C\u002Fp>\n\u003Cp>Kita coba bahas satu-satu.\u003C\u002Fp>\n\u003Ch3 id=\"tipe-data-primitif\">Tipe data Primitif\u003C\u002Fh3>\n\u003Cp>Dengar kata primitif jangan langsung mengarah ke manusia purba ya, dalam pemrograman juga dipakai istilah ini.\u003C\u002Fp>\n\u003Cp>Tipe data primitif merupakan tipe data yang sudah ada dari sananya. Sudah disediakan oleh bahasa pemrograman, bahkan sudah disediakan oleh hardware yang kita punya. Kebanyakan bahasa pemrograman punya jenis primitif yang sama.\u003C\u002Fp>\n\u003Cp>Kita mungkin sudah pernah menyinggung hal ini ketika membahas tentang \u003Ca href=\"https:\u002F\u002Fwww.invasikode.com\u002Fvariabel-dan-literal-pada-bahasa-java\">variabel pada java\u003C\u002Fa>. Tapi tidak apa-apa kita coba bahas lagi supaya tidak lupa.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>\u003Cstrong>Tipe Data\u003C\u002Fstrong>\u003C\u002Fth>\n\u003Cth>\u003Cstrong>Deskripsi\u003C\u002Fstrong>\u003C\u002Fth>\n\u003Cth>\u003Cstrong>Nilai\u003C\u002Fstrong>\u003C\u002Fth>\n\u003Cth>\u003Cstrong>Ukuran\u003C\u002Fstrong>\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Cstrong>boolean\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Tipe data logika true false\u003C\u002Ftd>\n\u003Ctd>true, false\u003C\u002Ftd>\n\u003Ctd>1 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>byte\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Penyimpan data mentah (karakter, dll)\u003C\u002Ftd>\n\u003Ctd>-128 - 127\u003C\u002Ftd>\n\u003Ctd>8 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>char\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Penyimpan karakter unicode\u003C\u002Ftd>\n\u003Ctd>karakter unicode\u003C\u002Ftd>\n\u003Ctd>16 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>short\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Bilangan bulat jarak pendek\u003C\u002Ftd>\n\u003Ctd>-32768 - 32767\u003C\u002Ftd>\n\u003Ctd>16 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>int\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Bilangan bulat jarak menengah\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"katex\">\u003Cspan class=\"katex-mathml\">\u003Cmath xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1998\u002FMath\u002FMathML\">\u003Csemantics>\u003Cmrow>\u003Cmo>−\u003C\u002Fmo>\u003Cmsup>\u003Cmn>2\u003C\u002Fmn>\u003Cmn>31\u003C\u002Fmn>\u003C\u002Fmsup>\u003C\u002Fmrow>\u003Cannotation encoding=\"application\u002Fx-tex\">-2^{31}\u003C\u002Fannotation>\u003C\u002Fsemantics>\u003C\u002Fmath>\u003C\u002Fspan>\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"katex-base\">\u003Cspan class=\"katex-strut\" style=\"height:0.8974em;vertical-align:-0.0833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">−\u003C\u002Fspan>\u003Cspan class=\"mord\">\u003Cspan class=\"mord\">2\u003C\u002Fspan>\u003Cspan class=\"msupsub\">\u003Cspan class=\"vlist-t\">\u003Cspan class=\"vlist-r\">\u003Cspan class=\"vlist\" style=\"height:0.8141em;\">\u003Cspan style=\"top:-3.063em;margin-right:0.05em;\">\u003Cspan class=\"pstrut\" style=\"height:2.7em;\">\u003C\u002Fspan>\u003Cspan class=\"katex-sizing reset-size6 size3 mtight\">\u003Cspan class=\"mord mtight\">\u003Cspan class=\"mord mtight\">31\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> sampai 2147483647\u003C\u002Ftd>\n\u003Ctd>32 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>long\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Bilangan bulat jarak panjang\u003C\u002Ftd>\n\u003Ctd>\u003Cspan class=\"katex\">\u003Cspan class=\"katex-mathml\">\u003Cmath xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1998\u002FMath\u002FMathML\">\u003Csemantics>\u003Cmrow>\u003Cmo>−\u003C\u002Fmo>\u003Cmsup>\u003Cmn>2\u003C\u002Fmn>\u003Cmn>63\u003C\u002Fmn>\u003C\u002Fmsup>\u003C\u002Fmrow>\u003Cannotation encoding=\"application\u002Fx-tex\">-2^{63}\u003C\u002Fannotation>\u003C\u002Fsemantics>\u003C\u002Fmath>\u003C\u002Fspan>\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"katex-base\">\u003Cspan class=\"katex-strut\" style=\"height:0.8974em;vertical-align:-0.0833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">−\u003C\u002Fspan>\u003Cspan class=\"mord\">\u003Cspan class=\"mord\">2\u003C\u002Fspan>\u003Cspan class=\"msupsub\">\u003Cspan class=\"vlist-t\">\u003Cspan class=\"vlist-r\">\u003Cspan class=\"vlist\" style=\"height:0.8141em;\">\u003Cspan style=\"top:-3.063em;margin-right:0.05em;\">\u003Cspan class=\"pstrut\" style=\"height:2.7em;\">\u003C\u002Fspan>\u003Cspan class=\"katex-sizing reset-size6 size3 mtight\">\u003Cspan class=\"mord mtight\">\u003Cspan class=\"mord mtight\">63\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan> sampai \u003Cspan class=\"katex\">\u003Cspan class=\"katex-mathml\">\u003Cmath xmlns=\"http:\u002F\u002Fwww.w3.org\u002F1998\u002FMath\u002FMathML\">\u003Csemantics>\u003Cmrow>\u003Cmsup>\u003Cmn>2\u003C\u002Fmn>\u003Cmn>63\u003C\u002Fmn>\u003C\u002Fmsup>\u003Cmo>−\u003C\u002Fmo>\u003Cmn>1\u003C\u002Fmn>\u003C\u002Fmrow>\u003Cannotation encoding=\"application\u002Fx-tex\">2^{63}-1\u003C\u002Fannotation>\u003C\u002Fsemantics>\u003C\u002Fmath>\u003C\u002Fspan>\u003Cspan class=\"katex-html\" aria-hidden=\"true\">\u003Cspan class=\"katex-base\">\u003Cspan class=\"katex-strut\" style=\"height:0.8974em;vertical-align:-0.0833em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">\u003Cspan class=\"mord\">2\u003C\u002Fspan>\u003Cspan class=\"msupsub\">\u003Cspan class=\"vlist-t\">\u003Cspan class=\"vlist-r\">\u003Cspan class=\"vlist\" style=\"height:0.8141em;\">\u003Cspan style=\"top:-3.063em;margin-right:0.05em;\">\u003Cspan class=\"pstrut\" style=\"height:2.7em;\">\u003C\u002Fspan>\u003Cspan class=\"katex-sizing reset-size6 size3 mtight\">\u003Cspan class=\"mord mtight\">\u003Cspan class=\"mord mtight\">63\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2222em;\">\u003C\u002Fspan>\u003Cspan class=\"mbin\">−\u003C\u002Fspan>\u003Cspan class=\"mspace\" style=\"margin-right:0.2222em;\">\u003C\u002Fspan>\u003C\u002Fspan>\u003Cspan class=\"katex-base\">\u003Cspan class=\"katex-strut\" style=\"height:0.6444em;\">\u003C\u002Fspan>\u003Cspan class=\"mord\">1\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Ftd>\n\u003Ctd>64 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>float\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Desimal presisi 7 digit di belakang koma\u003C\u002Ftd>\n\u003Ctd>presisi 7 digit\u003C\u002Ftd>\n\u003Ctd>32 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>double\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Desimal presisi 16 digit di belakang koma\u003C\u002Ftd>\n\u003Ctd>presisi 16 digit\u003C\u002Ftd>\n\u003Ctd>64 bit\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cp>Nah, dari tipe data primitif tersebut kita bisa bagi lagi menjadi beberapa kelompok yaitu:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Logika\u003C\u002Fstrong> — boolean\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Karakter\u003C\u002Fstrong> — char\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Integer\u003C\u002Fstrong> — byte, short, int, dan long\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Float\u003C\u002Fstrong> — float, dan double\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Untuk lebih jelasnya akan kita bedah satu-satu pada kesempatan selanjutnya.\u003C\u002Fp>\n\u003Ch3 id=\"tipe-data-bentukan-objek\">Tipe data Bentukan (Objek)\u003C\u002Fh3>\n\u003Cp>Selanjutnya ada tipe data bentukan. Seperti namanya, tipe data ini dibentuk sendiri oleh programmer dan bisa terdiri dari gabungan data primitif.\u003C\u002Fp>\n\u003Cp>Sebagai bahasa OOP, semua hal pada Java adalah Objek. Objek ini merupakan salah satu jenis dari tipe data bentukan. Dalam sebuah objek kita bisa memberikan atribut sesuai kebutuhan kita.\u003C\u002Fp>\n\u003Cp>Bahkan, tiap data primitif punya padanan objeknya. Untuk membedakan mana yang primitif mana yang objek tinggal kita lihat huruf awalnya saja. Kalau diawali kapital berarti itu objek, sebaliknya kalau diawali huruf kecil maka itu primitif.\u003C\u002Fp>\n\u003Cp>Contohnya saja tipe data \u003Ccode>boolean\u003C\u002Fcode>, padanan objeknya adalah \u003Ccode>Boolean\u003C\u002Fcode>. Kalau \u003Ccode>double\u003C\u002Fcode> padanan objeknya adalah \u003Ccode>Double\u003C\u002Fcode>. Terakhir yang agak lain ada \u003Ccode>int\u003C\u002Fcode> dengan padanan objeknya yaitu \u003Ccode>Integer\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>Penamaan Objek dengan awalan kapital ini merupakan \u003Cstrong>typing convention\u003C\u002Fstrong> alias aturan penulisan yang disarankan pada bahasa Java.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>Tipe bentukan yang mungkin sering kita pakai adalah \u003Ccode>String\u003C\u002Fcode>. Tipe data ini masuk ke tipe bentukan karena dia merupakan gabungan dari beberapa data bertipe \u003Ccode>char\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Selain Objek, terdapat beberapa jenis tipe bentukan yang bisa kita buat diantaranya:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>class\u003C\u002Fstrong> — Template untuk pembuatan objek\u003C\u002Fli>\n\u003Cli>\u003Cstrong>interface\u003C\u002Fstrong> — Template untuk pembuatan class\u003C\u002Fli>\n\u003Cli>\u003Cstrong>enum\u003C\u002Fstrong> — Tipe data dengan nilai valid yang ditentukan oleh programmer\u003C\u002Fli>\n\u003Cli>\u003Cstrong>array\u003C\u002Fstrong> — Kumpulan dari beberapa data yang dapat diakses dengan indeks\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Lebih lanjut tentang class, interface, dan enum akan kita bahas lebih lanjut pada bagian OOP pada Java.\u003C\u002Fp>\n\u003Ch2 id=\"selanjutnya\">Selanjutnya\u003C\u002Fh2>\n\u003Cp>Setelah kita kenalan, selanjutnya kita akan coba bahas lebih dalam lagi untuk tiap tipe data. Kita akan bahas tentang aturan-aturan, operasi apa yang bisa dilakukan, hingga cara mengubah tipe data menjadi tipe yang lainnya.\u003C\u002Fp>\n\u003Cp>Semoga bermanfaat, selamat berkoding ria 👋\u003C\u002Fp>\n","",[148,167,185,202,218,232],{"id":149,"title":150,"title_en":8,"slug":151,"excerpt":152,"excerpt_en":8,"has_translation":11,"published_at":153,"reading_time":13,"hidden_from_listing":11,"tags":154,"thumbnail_image":8,"og_image":161,"series":162,"authors":164},129,"Biar RAG nggak kena 504: pisahin jalur query dan ingestion","rag-pisah-jalur-query-dan-ingestion","Satu service RAG yang merangkap parsing dan menjawab kueri bakal tumbang pas ada yang upload PDF 200 halaman. Obatnya dua jalur dan satu queue.","2026-10-22T01:30:00.000Z",[155,156,157,158,159,160],"rag","cloud-run","cloud-tasks","gcp","serverless","arsitektur","\u002Fog\u002Frag-pisah-jalur-query-dan-ingestion.png",{"id":163,"title":32,"title_en":33,"slug":34},8,[165],{"authors_id":166},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},{"id":168,"title":169,"title_en":8,"slug":170,"excerpt":171,"excerpt_en":8,"has_translation":11,"published_at":172,"reading_time":106,"hidden_from_listing":11,"tags":173,"thumbnail_image":8,"og_image":180,"series":181,"authors":182},128,"Linear atau graf: cara mengatur banyak agent tanpa loop abadi","multi-agen-linear-atau-grafik","Satu agent dengan dua puluh tool gampang kacau. Begitu beberapa agent saling revisi, kamu butuh graf yang mendukung cycle dan angka yang membuatnya berhenti.","2026-10-21T16:05:00.000Z",[174,175,176,177,178,179],"multi-agent","langgraph","autogen","orkestrasi","checkpoint","llm","\u002Fog\u002Fmulti-agen-linear-atau-grafik.png",{"id":163,"title":32,"title_en":33,"slug":34},[183],{"authors_id":184},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},{"id":186,"title":187,"title_en":8,"slug":188,"excerpt":189,"excerpt_en":8,"has_translation":11,"published_at":190,"reading_time":106,"hidden_from_listing":11,"tags":191,"thumbnail_image":8,"og_image":197,"series":198,"authors":199},127,"Kenapa RAG yang cuma andalkan cosine similarity sering nyasar","kenapa-rag-cuma-cosine-similarity-sering-nyasar","RAG yang cuma andalkan embedding balikin chunk yang mirip maknanya, bukan yang kamu butuh. Ini penyebabnya, dan dua lapis penambalnya.","2026-10-19T02:04:06.718Z",[155,192,193,194,195,196],"vector-search","bm25","hybrid-search","retrieval","embedding","\u002Fog\u002Fkenapa-rag-cuma-cosine-similarity-sering-nyasar.png",{"id":163,"title":32,"title_en":33,"slug":34},[200],{"authors_id":201},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},{"id":203,"title":204,"title_en":8,"slug":205,"excerpt":206,"excerpt_en":8,"has_translation":11,"published_at":207,"reading_time":208,"hidden_from_listing":11,"tags":209,"thumbnail_image":8,"og_image":213,"series":214,"authors":215},126,"Memori AI Agent: dari Vector Store ke Temporal Graph","memori-ai-agent-vector-store-ke-temporal-graph","Dua fakta yang saling bertentangan bikin agent menjawab ngawur. Ini bedanya vector store dan temporal knowledge graph dalam menjaga state jangka panjang.","2026-10-18T13:13:29.458Z",7,[210,179,211,212],"ai","backend","system-design","\u002Fog\u002Fmemori-ai-agent-vector-store-ke-temporal-graph.png",{"id":163,"title":32,"title_en":33,"slug":34},[216],{"authors_id":217},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},{"id":219,"title":220,"title_en":8,"slug":221,"excerpt":222,"excerpt_en":8,"has_translation":11,"published_at":223,"reading_time":163,"hidden_from_listing":11,"tags":224,"thumbnail_image":8,"og_image":229,"series":230,"authors":231},125,"MCP dibongkar ulang: kabar baik buat kamu yang capek nulis konektor","mcp-dibongkar-ulang-kabar-baik-buat-kamu","Kamu punya beberapa API internal dan satu agent AI, tapi kodenya harus ditulis ulang tiap kali modelnya diganti. MCP datang buat mengakhiri itu, dan tahun ini protokolnya dibongkar ulang supaya server-nya bisa jalan seperti web server biasa. Yuk lihat apa yang berubah. 🔧","2026-10-16T05:00:00.000Z",[225,226,227,179,211,228],"mcp","model-context-protocol","ai-agent","python","\u002Fog\u002Fmcp-dibongkar-ulang-kabar-baik-buat-kamu.png",{"id":163,"title":32,"title_en":33,"slug":34},[],{"id":233,"title":234,"title_en":8,"slug":235,"excerpt":236,"excerpt_en":8,"has_translation":11,"published_at":237,"reading_time":106,"hidden_from_listing":11,"tags":238,"thumbnail_image":8,"og_image":244,"series":245,"authors":246},124,"Rahasia Zero-Cost Abstraction di Rust, Dibedah dari Assembly","rahasia-zero-cost-abstraction-di-rust","\"Abstraksi tinggi selalu lebih lambat\" itu anggapan lama. Iterator Rust bisa menyamai loop manual, dan assembly-nya bisa kita baca sendiri. Yuk, kita bongkar!","2026-10-13T05:19:00.000Z",[239,240,241,242,243],"rust","performance","system-programming","compiler","optimasi","\u002Fog\u002Frahasia-zero-cost-abstraction-di-rust.png",{"id":21,"title":22,"title_en":23,"slug":24},[247,249],{"authors_id":248},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},{"authors_id":250},{"id":96,"name":97,"slug":98,"role":99,"profile_picture":8},[252,256,259,262,265],{"text":253,"depth":254,"id":255},"Sekilas Tentang Tipe Data",2,"sekilas-tentang-tipe-data",{"text":257,"depth":254,"id":258},"Jenis Tipe Data pada Java","jenis-tipe-data-pada-java",{"text":260,"depth":76,"id":261},"Tipe data Primitif","tipe-data-primitif",{"text":263,"depth":76,"id":264},"Tipe data Bentukan (Objek)","tipe-data-bentukan-objek",{"text":266,"depth":254,"id":267},"Selanjutnya","selanjutnya",1792663696693]