Selanjutnya, artikel sebelumnya akan memperkenalkan kepada Anda metode umum aplikasi Java dan input dan output untuk referensi Anda. Konten spesifiknya adalah sebagai berikut
1. Aplikasi
1. Gunakan StringBuilder atau StringBuffer
// gabungkan (["a", "b", "c"]) -> "a dan b dan c" string gabung (daftar <string> strs) {stringBuilder sb = new stringBuilder (); boolean pertama = true; untuk (string s: strs) {if (first) first = false; lain SB.Append ("dan"); SB.Append (s); } return sb.toString ();}2. Hasilkan bilangan bulat acak dalam kisaran
Rand acak = acak baru (); // Antara 1 dan 6, termasuk inint diceroll () {return rand.nextint (6) + 1;} 3. Gunakan iterator.remove ()
void filter (daftar <string> daftar) {untuk (iterator <string> iter = list.iterator (); iter.hasnext ();) {string item = iter.next (); if (...) iter.remove (); }}Metode Remove () bertindak pada entri yang baru saja dikembalikan dari metode berikutnya (). Setiap entri hanya dapat menggunakan metode lepas () sekali.
4. Return String
String reverse (string s) {return new stringBuilder (s) .reverse (). ToString ();} Metode ini mungkin harus ditambahkan ke pustaka standar Java.
5. Mulai utas <BR /> Tiga contoh berikut menggunakan metode yang berbeda untuk mencapai hal yang sama.
Cara menerapkan runnnable:
void startAthread0 () {utas baru (myRunnable baru ()). start ();} kelas myRunnable mengimplementasikan runnable {public void run () {...}}Cara mewarisi utas:
void startathread1 () {new mythread (). start ();} class mythread memperluas utas {public void run () {...}}Cara mewarisi utas secara anonim:
void startAthread2 () {thread baru () {public void run () {...}} .start ();}Jangan memanggil metode run () secara langsung. Metode thread.start () selalu dipanggil, yang membuat utas baru dan menyebabkan utas yang baru dibuat untuk dipanggil ().
6. Gunakan mencoba-akhir
Contoh aliran I/O:
void writestuff () melempar ioException {outputStream out = FileOutputStream baru (...); coba {out.write (...); } akhirnya {out.close (); }}Contoh kunci:
void dowithlock (lock lock) {lock.acquire (); coba {...} akhirnya {lock.release (); }}2. Input/Output
1. Baca data byte dari aliran input
InputStream in = (...); coba {while (true) {int b = in.read (); if (b == -1) break; (... proses b ...)}} akhirnya {in.close ();}Metode baca () baik mengembalikan jumlah byte berikutnya yang dibaca dari aliran (0 hingga 255, termasuk 0 dan 255), atau mengembalikan -1 ketika ujung aliran tercapai.
2. Baca data blok dari aliran input
InputStream in = (...); coba {byte [] buf = byte baru [100]; while (true) {int n = in.read (buf); if (n == -1) break; (... proses buf dengan offset = 0 dan panjang = n ...)}} akhirnya {in.close ();}Ingatlah bahwa metode baca () tidak selalu mengisi seluruh buf, jadi Anda harus mempertimbangkan panjang pengembalian dalam logika pemrosesan.
3. Baca teks dari file
BufferedReader di = BufferedReader baru (inputStreamReader baru (FileInputStream baru (...), "UTF-8")); coba {while (true) {string line = in.readline (); if (line == null) break; (... baris proses ...)}} akhirnya {in.close ();}4. Tulis teks ke file
Printwriter out = printwriter baru (outputStreamWriter baru (FileOutputStream baru (...), "UTF-8")); coba {out.print ("halo"); out.print (42); out.println ("World!");} akhirnya {out.close ();}Di atas adalah semua tentang artikel ini, saya harap ini akan membantu untuk pembelajaran semua orang.