Pertanyaan yang diberi tag «immutability»

Kekekalan adalah ketidakmampuan untuk mengubah data setelah data dibuat. Modifikasi dilakukan dengan menyalin data. Properti dari data yang tidak dapat diubah adalah bahwa ia * transparan referensial *.

27
Hapus karakter tertentu dari string dengan Python
Saya mencoba untuk menghapus karakter tertentu dari string menggunakan Python. Ini adalah kode yang saya gunakan sekarang. Sayangnya tampaknya tidak melakukan apa pun pada string. for char in line: if char in " ?.!/;:": line.replace(char,'') Bagaimana saya melakukan ini dengan benar?



17
Apa yang dimaksud dengan abadi?
Ini bisa menjadi pertanyaan paling bodoh yang pernah diajukan tetapi saya pikir itu cukup membingungkan bagi seorang pemula Java. Adakah yang bisa menjelaskan apa yang dimaksud dengan abadi ? Mengapa tidak Stringberubah? Apa kelebihan / kekurangan benda yang tidak bisa diubah? Mengapa objek yang bisa berubah seperti StringBuilderlebih disukai daripada …

15
Apakah string Java benar-benar tidak berubah?
Kita semua tahu bahwa Stringitu tidak dapat diubah di Jawa, tetapi periksa kode berikut: String s1 = "Hello World"; String s2 = "Hello World"; String s3 = s1.substring(6); System.out.println(s1); // Hello World System.out.println(s2); // Hello World System.out.println(s3); // World Field field = String.class.getDeclaredField("value"); field.setAccessible(true); char[] value = (char[])field.get(s1); value[6] = …


30
Apa nama terbaik untuk metode “tambahkan” yang tidak bermutasi pada koleksi yang tidak berubah?
Maaf untuk judul waffly - jika saya bisa menghasilkan judul yang ringkas, saya tidak perlu mengajukan pertanyaan. Misalkan saya memiliki tipe daftar yang tidak dapat diubah. Ini memiliki operasi Foo(x)yang mengembalikan daftar abadi dengan argumen yang ditentukan sebagai elemen tambahan di akhir. Jadi untuk membangun daftar string dengan nilai "Hello", …


26
Kekekalan String di Jawa
Perhatikan contoh berikut. String str = new String(); str = "Hello"; System.out.println(str); //Prints Hello str = "Help!"; System.out.println(str); //Prints Help! Sekarang, di Jawa, objek String tidak dapat diubah. Lalu bagaimana bisa benda itustr tersebut diberi nilai "Bantuan!". Bukankah ini bertentangan dengan kekekalan string di Jawa? Adakah yang bisa menjelaskan konsep …


11
Mengapa imutabilitas sangat penting (atau dibutuhkan) dalam JavaScript?
Saat ini saya sedang mengerjakan kerangka Bereaksi JS dan Bereaksi Asli . Di tengah jalan saya menemukan Immutability atau Immutable-JS library , ketika saya membaca tentang implementasi Flux dan Redux Facebook. Pertanyaannya adalah, mengapa kekekalan begitu penting? Apa yang salah dalam bermutasi objek? Bukankah itu membuat hal-hal sederhana? Sebagai contoh, …

16
Tipe Immutable vs Mutable
Saya bingung tentang tipe yang tidak bisa diubah. Saya tahu floatobjek tersebut dianggap tidak dapat diubah, dengan jenis contoh ini dari buku saya: class RoundFloat(float): def __new__(cls, val): return float.__new__(cls, round(val, 2)) Apakah ini dianggap tidak dapat diubah karena struktur kelas / hierarki ?, makna floatada di bagian atas kelas …

24
Bagaimana cara membuat objek yang tidak dapat diubah dengan Python?
Meskipun saya tidak pernah membutuhkan ini, saya baru sadar bahwa membuat objek yang tidak dapat diubah dengan Python bisa sedikit rumit. Anda tidak bisa hanya menimpanya __setattr__, karena Anda bahkan tidak dapat mengatur atribut di __init__. Subkelas tuple adalah trik yang berfungsi: class Immutable(tuple): def __new__(cls, a, b): return tuple.__new__(cls, …


11
Dapat berubah vs objek yang tidak berubah
Saya mencoba untuk membuat kepala saya berputar-putar vs benda yang tidak bisa diubah. Menggunakan objek yang bisa berubah mendapat banyak tekanan buruk (misalnya mengembalikan serangkaian string dari suatu metode) tapi saya mengalami kesulitan memahami apa dampak negatif dari ini. Apa praktik terbaik di sekitar menggunakan objek yang bisa berubah? Haruskah …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.