JavaRush /Java Blog /Random-ID /Literal dalam bahasa Jawa

Literal dalam bahasa Jawa

Dipublikasikan di grup Random-ID
Pada tahap pembuatan aplikasi, pengembang biasanya hanya mengetahui strukturnya dan tidak berasumsi data apa yang akan diprosesnya. Namun, dalam beberapa situasi, Anda perlu secara eksplisit menentukan beberapa data dalam kode program (misalnya, jumlah iterasi atau pesan yang akan dikeluarkan). Dalam hal ini, literal bisa membantu. Isi:

Apa itu literal?

Literal adalah nilai yang ditentukan secara eksplisit dalam kode program - konstanta dari tipe tertentu yang ada dalam kode pada saat peluncuran.
class Test {
   public static void main(String[] args) {
       System.out.println("Hello world!");
   }
}
Di kelas ini “Halo dunia!” - secara harfiah. Literal mempunyai jenis yang berbeda-beda, ditentukan oleh tujuan dan cara penulisannya.

Jenis-jenis literal dan kegunaannya

Semua literal adalah nilai primitif (string, angka, karakter, boolean). Anda tidak dapat membuat objek literal. Satu-satunya literal yang terkait dengan suatu objek adalah null. Menurut primitif, literal juga dibagi menjadi beberapa bagian:
  1. numerik:
    • bilangan bulat;
    • Titik mengambang;
  2. Rangkaian;
  3. Karakter;
  4. Asah otak.

Literal numerik

Literal bilangan bulat

Jenis literal ini adalah yang paling sederhana. Angka ditulis dalam bentuk standarnya tanpa menunjukkan karakter atau apapun. Bilangan bulat apa pun adalah bilangan bulat literal secara default. Artinya, Anda dapat secara eksplisit mengatur nilai variabel atau jumlah iterasi dalam satu lingkaran. Java mendukung 4 sistem angka:
  • Biner
  • Oktal
  • Desimal
  • Heksadesimal
JDK 7 memperkenalkan kemampuan untuk menulis nilai biner . Ini dilakukan dengan menggunakan awalan 0b atau 0B . Berikutnya penulisan menggunakan 0 dan 1. Angka dalam oktal ditulis dengan awalan 0. Angka yang valid adalah 0 sampai 7. Penulisan 09 atau 08 akan menyebabkan kesalahan kompilasi. Tidak ada masalah dengan sistem bilangan desimal : bilangan ditunjukkan dalam bentuk yang kita kenal. Satu-satunya batasan adalah angka tersebut tidak boleh dimulai dengan 0, karena kompiler akan menganggapnya sebagai oktal. Bilangan dalam heksadesimal ditulis dengan menggunakan awalan 0x dan 0X. Angka yang valid adalah dari 0 hingga 15, dimana angka 10-15 ditandai dengan simbol AF masing-masing.
public static void main(String[] args) {
       int a = 0b1101010110;
       int b = 012314;
       int c = 456;
       int d = 0x141D12;
       System.out.println("Число a в двоичной системе: " + a);
       System.out.println("Число b в восьмеричной системе: " + b);
       System.out.println("Число c в десятичной системе: " + c);
       System.out.println("Число d в шестнадцатеричной системе: " + d);
}
Keluaran: Bilangan a dalam sistem biner: 854 Bilangan b dalam sistem oktal: 5324 Bilangan c dalam sistem desimal: 456 Bilangan d dalam sistem heksadesimal: 1318162 Meskipun bilangan ditentukan dalam sistem bilangan yang berbeda, dalam program bilangan tersebut diproses sebagai desimal angka. Melebihi nilai akan mengakibatkan kesalahan kompilasi:
int b = 012914; // Ошибка
int d = 0x141Z12; // Ошибка
Ketika dijalankan pada tahap kompilasi, kita mendapatkan hasil sebagai berikut:

Error:(13, 25) java: integer number too large: 012914
Error:(14,30) java: ';' expected
Bagaimana dengan mengetik? Setiap literal bilangan bulat memiliki tipe default int. Jika nilainya berada di luar batas variabel yang ditetapkan, terjadi kesalahan kompilasi. Saat menggunakan suatu tipe, longAnda harus meletakkan simbol di akhir Lyang menunjukkan tipe ini:
long x = 0x1101010110; // Ошибка
long b = 1342352352351351353L; // Все в порядке
Mencoba mengkompilasi menghasilkan kesalahan berikut:

Error(11, 26) java: integer number too large: 1101010110

Literal titik mengambang

Bilangan floating point, atau bilangan pecahan, dapat ditulis dengan dua cara. Yang pertama sebagai pecahan desimal klasik: 3.14159 atau 2.718281282459045. Yang kedua dalam bentuk ilmiah, yaitu pecahan desimal biasa ditambah akhiran berupa lambang e atau E dan pangkat 10 yang harus mengalikan pecahan yang ditentukan. Misalnya 4.05E-13, artinya 4.05 * 10 -13 .
double a = 2.718281828459045;
double d = 4.05E-13;
System.out.println("Тип double в классическом виде: " + a);
System.out.println("Тип double в научном виде: " + d);
Keluaran: Tipe ganda klasik: 2.718281828459045 Tipe ganda ilmiah: 4.05E-13 Berbeda dengan bilangan bulat dan sistem bilangan, notasi ilmiah disimpan dalam variabel dan diproses dengan cara yang sama seperti notasi klasik. Bagaimana dengan mengetik? Nomor floating point apa pun menciptakan tipe double. Jika Anda harus menggunakan type float, Anda harus menambahkan fatau di akhir F. Dalam hal ini doubleakan direduksi menjadi type float. Hal ini tidak terjadi secara otomatis:
float a = 2.718281828459045; // Ошибка
float d = 4.05E-13F; // Все в порядке
Saat memulai tahap kompilasi kita melihat kesalahan berikut:

Error:(11, 27) java: incompatible types: possible lossy conversion from double to float

String literal

Literal string adalah sekumpulan karakter yang diapit tanda kutip ganda. Tipe ini digunakan sesering literal numerik. Baris tersebut mungkin juga berisi karakter layanan yang perlu di-escape (disebut urutan escape). Contoh:
String simpleString = "Это обычная строка. Такая же стандартная и непримечательная, How и все мы.";
String uniqueString = "А это необычная \"строка\". Хотя бы потому, что часть \"слов\" в ней в \"кавычках\".";
System.out.println(simpleString);
System.out.println(uniqueString);
Keluaran: Ini adalah string normal. Sama standar dan biasa-biasa saja seperti kita semua. Dan ini adalah “garis” yang tidak biasa. Kalau saja karena beberapa “kata” di dalamnya ada dalam “tanda kutip”.

Literal karakter

Literal karakter di Java diwakili oleh kumpulan karakter Unicode, yaitu setiap karakter adalah nilai 16-bit. Untuk menunjukkan suatu simbol dalam kode, dipisahkan dengan tanda kutip tunggal. Berdasarkan pengalaman, ada dua jenis simbol:
  1. Yang dapat dimasukkan dari keyboard adalah karakter biasa;
  2. Simbol yang tidak bisa dimasukkan begitu saja dari keyboard (simbol berbagai bahasa, bentuk, dan sebagainya).
Karakter reguler dapat ditentukan secara eksplisit: ' ,' atau ' @'. Jika suatu karakter adalah karakter layanan (misalnya, jeda baris atau tab), karakter tersebut harus di-escape dengan garis miring terbalik. Karakter yang tidak bisa dimasukkan begitu saja dari konsol dapat ditentukan dalam bentuk 16-bitnya. Untuk melakukan ini, Anda harus menentukan kode karakter dengan awalan \u, misalnya ' \u00F7'. Anda juga dapat menentukan karakter dalam gaya oktal (angka tiga digit) hanya dengan menambahkan garis miring terbalik di awal, misalnya ' \122'. Menurut saya, penggunaannya jauh lebih mudah \u. Contoh penggunaan:
System.out.println("Амперсанд - " + '&');
System.out.println("Символ деления - " + '\u00F7');
Keluaran: Ampersand - & Simbol pembagian -

Literal Boolean

Literal yang paling sederhana adalah literal yang logis. Hanya ada 2 nilai: falsedan true, yang ditentukan secara eksplisit tanpa berbagai simbol. Literal tersebut dapat ditetapkan ke variabel bertipe boolean atau ditentukan di tempat di mana tipe boolean diharapkan (misalnya, dalam blok if, meskipun praktik ini dianggap tidak sopan, secara halus).
boolean flag = false;

if(true) {
    // Действия будут выполняться всегда.
}

Teknik Jedi dengan literal

Berkat simbol di Java, Anda bisa melakukan banyak hal menarik, termasuk mengelola emoji. Misalnya, mari kita tampilkan wajah tersenyum:
int smile = 0x1F600; // Здесь шестнадцатеричный code эмоджи
StringBuilder sb = new StringBuilder();
sb.append(Character.toChars(smile)); // Собираем в StringBuilder
System.out.println("Улыбающееся лицо: " + sb.toString()); // Выводим
Kesimpulan: Wajah tersenyum: 😀 Meskipun tampilan emoji mungkin menyeramkan (tergantung penerapannya), solusi ini berfungsi dengan baik. Namun, sulit untuk mencari emoji yang diinginkan di tabel pengkodean standar, bagian Emoticon di situs resminya jarang. Jauh lebih mudah menggunakan perpustakaan tambahan.

Literal dalam kursus JavaRush

Dalam kursus JavaRush, literal dipelajari pada level 10 dalam kuliah 8 kursus Sintaks Java , di mana contoh menjelaskan apa itu literal dan mengapa diperlukan. JavaRush adalah kursus online tentang pemrograman Java dengan penekanan pada praktik: 1200+ tugas dengan verifikasi instan, proyek mini, permainan.

Kesimpulan

Literal di Java adalah hal yang berguna dalam program apa pun, tetapi mereka harus digunakan di tempat yang sesuai. Anda tidak boleh melakukan hardcode parameter koneksi database atau nilai apa pun yang mungkin berubah selama siklus hidup program dalam kode sumber.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION