susunan Jawa
Array adalah kumpulan data dengan tipe data yang sama. Java sebagian besar mendukung array. Setiap unit dasar dari array satu dimensi adalah data dari tipe data dasar. Array dua dimensi berarti setiap unit dasar adalah satu dimensi dari a array satu dimensi. Array, dan seterusnya, setiap unit dasar array n-dimensi adalah array n-1 dimensi dari array n-1. Berikut ini penggunaan array satu dimensi sebagai contoh untuk mengilustrasikan penggunaan array Java.
1. Deklarasi array
Deklarasi array mempunyai dua bentuk berikut (posisi tanda kurung siku berbeda):
int arr[];int[] arr2;
2. Inisialisasi larik
Ada juga dua bentuk inisialisasi array, sebagai berikut (menggunakan yang baru atau tidak menggunakan yang baru):
int arr[] = baru int[]{1, 3, 5, 7, 9}; int[] arr2 = {2, 4, 6, 8, 10};
3. Lintasi array
Anda dapat menggunakan for/foreach untuk melintasi array, sebagai berikut:
public static void main(String[] args) { int arr[] = int baru[]{1, 3, 5, 7,9}; int[] arr2 = {2, 4, 6, 8, 10}; (int i = 0; i < arr.length; ++i) { Sistem.keluar.print(arr[i] + "/t"); // 1 3 5 7 9 } untuk (int x: arr2) { Sistem.keluar.cetak(x + "/t"); // 2 4 6 8 10 } }
4. Arrays.fill() mengisi array
Untuk menggunakan metode statis kelas Arrays, Anda perlu mengimpor paket java.util.Arrays, yang mendefinisikan banyak metode yang kelebihan beban.
kekosongan isi(int[] a, int val) isi semua
void fill(int[] a, int fromIndex, int toIndex, int val) mengisi elemen pada indeks yang ditentukan
int[] arr3 = new int[5]; for (int x: arr3) { System.out.print(x + "/t"); // 0 0 0 0 0 Semua diinisialisasi ke 0 } System.out.println (); Array.isi(arr3, 10); untuk (int x: arr3) { Sistem.keluar.cetak(x + "/t"); 10 10 Isi semua sampai 10 } System.out.println(); Arrays.fill(arr3, 1, 3, 8); for (int x: arr3) { System.out.print(x + "/t"); // 10 8 8 10 10 Isikan indeks yang ditentukan } System.out.println();
5. Arrays.sort() mengurutkan array
void sort(int[] a) urutkan semua
void sort(int[] a, int fromIndex, int toIndex) mengurutkan elemen pada indeks yang ditentukan
int[] arr4 = {3, 7, 2, 1, 9}; Array.sort(arr4); untuk (int x: arr4) { Sistem.out.print(x + "/t"); 3 7 9 } Sistem.keluar.println(); int[] arr5 = {3, 7, 2, 1, 9}; 1, 3); untuk (int x: arr5) { Sistem.keluar.cetak(x + "/t"); // 3 2 7 1 9 } Sistem.keluar.cetakln();
6. Arrays.copyOf() menyalin sebuah array
int[] copyOf(int[] original, int newLength) menyalin array dan menentukan panjang array baru
int[] copyOfRange(int[] original, int from, int to) menyalin sebuah array, menentukan indeks dari array asli yang disalin
int[] arr6 = {1, 2, 3, 4, 5}; int[] arr7 = Array.copyOf(arr6, 5); , 3); // 2 3 untuk (int x: arr7) { Sistem.keluar.cetak(x + "/t"); } Sistem.keluar.println(); untuk (int x: arr8) { Sistem.keluar.cetak(x + "/t");
rangkaian Jawa
Tipe string Java adalah kelas String. Berikut ini penjelasan cara mengoperasikan string.
1. Penggabungan string
Penggabungan string menggunakan simbol “+”, seperti pada contoh berikut:
String s = String baru("Halo"); String s2 = String baru("Dunia"); System.out.println(s + " " + s2);
2. Dapatkan panjang senarnya
Untuk mendapatkan panjang string, gunakan str.length(), seperti pada contoh berikut:
String s3 = String baru("Halo Java"); Sistem.keluar.println(s3.panjang()); // 10
3. Dapatkan indeks dari string yang ditentukan
Untuk mendapatkan indeks string tertentu, gunakan str.indexOf(substr), str.lastIndexOf(substr), seperti yang ditunjukkan dalam contoh berikut:
String s4 = new String("apa kabar"); System.out.println(s4.indexOf("o")); // 1 Temukan System.out.println(s4.lastIndexOf("o")) dari awal ; // 9 Cari dari akhir
4. Dapatkan karakter pada indeks yang ditentukan
Untuk mendapatkan karakter pada indeks yang ditentukan, gunakan str.charAt(index), seperti pada contoh berikut:
String s5 = String baru("Halo Java"); System.out.println(s5.charAt(4)); // o
5. Hapus spasi dari string
Ada banyak cara untuk menghilangkan spasi dalam sebuah string. Gunakan str.trim() atau str.replaceAll(regex, replacement). Anda juga dapat menggunakan kelas StringTokenizer untuk memisahkan string dengan spasi. StringTokenizer sebelum digunakan. , contoh berikut:
String s6 = new String(" Hello Java "); String s7 = s6.trim(); // Hapus spasi di awal dan akhir string String s8 = s6.replaceAll(" ", ""); karakter Semua spasi dalam string StringTokenizer st = new StringTokenizer(s6, " "); // Gunakan spasi untuk memisahkan string StringBuffer sb = new StringBuffer(); (st.hasMoreTokens()) { sb.append(st.nextToken()); System.out.println("/"" + s6 + "/"" + "panjang = " + s6.length()); // "Halo Java "panjang = 14 System.out.println("/"" + s7 + "/"" + "panjang = " + s7.length()); // "Halo Java"panjang = 10 Sistem.keluar.println("/"" + s8 + "/"" + "panjang = " + s8.panjang()); // "HelloJava"panjang = 9 Sistem.keluar.println(" /"" + sb.toString() + "/"" + "panjang = " + sb.toString().length()); // "HelloJava" panjang = 9
6. Ganti talinya
String pengganti dapat menggantikan seluruh substring atau substring pertama, seperti terlihat pada contoh berikut:
String sr = new String("abc abd bcd"); String sr2 = sr.replace("ab", "xx"); // Ganti semua substring String sr3 = sr.replaceFirst("ab", "xx") ; // Ganti string pertama System.out.println(sr2); // "xxc xxd bcd" System.out.println(sr3); "xxc adb bcd"
7. Penilaian string
Ada banyak situasi untuk kesetaraan string, seperti kesetaraan konten string, apakah akan mengabaikan kasus, kesetaraan alamat memori, penilaian awal atau akhir string, dll., seperti yang ditunjukkan di bawah ini:
String se = new String("Musim panas sangat panas"); String se1 = new String("Musim panas sangat panas"); String se2 = new String("musim panas sangat panas"); .println(se == se1); // false membandingkan memori dan bukan konten string System.out.println(se == se3); // true System.out.println(se.equals(se1)); Bandingkan isi string System.out.println(se.equals(se2)); // false System.out.println(se.equalsIgnoreCase(se2)); // true abaikan kasus System.out.println(se2.startsWith (" musim panas")); // true memulai string System.out.println(se2.endsWith("cold")); // false mengakhiri string
8. Konversi huruf besar-kecil
Contoh konversi string case adalah sebagai berikut:
String sc = new String("hello WORLD"); String scl = sc.toLowerCase(); // hello world diubah menjadi huruf kecil String scu = sc.toUpperCase(); // HELLO WORLD diubah menjadi huruf besar System.out. println(scl+" "+scu);
9. Pemisahan senar
Pembatas string adalah sebagai berikut:
String ss = new String("abc,def,g,h"); String[] ss2 = ss.split(","); // Pisahkan dengan koma untuk (String x: ss2) { System.out.print( x + "/t"); // abc def gh }
10. Format baris
Ada banyak bentuk pemformatan string, seperti pemformatan tanggal, pemformatan waktu, konversi desimal, dll. Penggunaan kelas Tanggal memerlukan paket impor java.util.Date, seperti yang ditunjukkan pada contoh berikut:
Tanggal d = Tanggal baru(); System.out.println(d); // Rabu 22 Juli 16:00:36 CST 2015 Format default System.out.println(String.format("%tm", d)); // 07 bulan dua digit System.out.println(String.format("%tH", d) // 16 Dua digit 24 jam system.out.println(String.format("%x", 256)); // 100 heksadesimal
11. Perbandingan kelas String, StringBuffer, dan StringBuilder
String: Objek string yang konstan dan tidak dapat diubah. Ketika konten variabel diubah, objek String baru benar-benar dihasilkan. Ketika konten variabel diubah berkali-kali dan sering, hal itu akan berdampak pada kinerja sistem, terutama menyebabkan GC mulai bekerja ., kecepatan program akan menjadi sangat lambat.
StringBuffer: Variabel string, aman untuk thread. Ketika konten variabel diubah, objek yang sama sebenarnya dioperasikan, dan efisiensinya lebih tinggi daripada tipe String.
StringBuilder: Variabel string, kompatibel dengan StringBuffer, tetapi tidak aman untuk thread. Jika thread tunggal, gunakan StringBuilder terlebih dahulu, ini lebih cepat daripada StringBuffer.