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 *.

7
Koleksi Immutable vs Unmodifiable
Dari Ikhtisar Kerangka Kerja Koleksi : Koleksi yang tidak mendukung operasi modifikasi (seperti add, removedan clear) disebut sebagai tidak dapat dimodifikasi . Koleksi yang tidak dapat dimodifikasi dapat dimodifikasi . Koleksi yang juga menjamin bahwa tidak ada perubahan pada Collectionobjek akan terlihat disebut tidak berubah . Koleksi yang tidak bisa …


14
Array yang tidak dapat diubah di Jawa
Apakah ada alternatif abadi untuk array primitif di Jawa? Membuat array primitif finalsebenarnya tidak mencegah seseorang melakukan sesuatu seperti final int[] array = new int[] {0, 1, 2, 3}; array[0] = 42; Saya ingin elemen array tidak dapat diubah.

14
Apa yang akan "beku dict" menjadi?
Satu set beku adalah frozenset. Daftar yang dibekukan bisa berupa tupel. Apa yang akan menjadi beku dict? Dict yang tidak berubah dan hashable. Saya kira itu bisa menjadi sesuatu seperti collections.namedtuple, tapi itu lebih seperti dict kunci beku (dict setengah beku). Bukan? Sebuah "frozendict" harus kamus beku, harus memiliki keys, …

8
Kesalahan: “Tidak dapat mengubah nilai kembali” c #
Saya menggunakan properti yang diimplementasikan secara otomatis. Saya kira cara tercepat untuk memperbaiki yang berikut adalah dengan mendeklarasikan variabel dukungan saya sendiri? public Point Origin { get; set; } Origin.X = 10; // fails with CS1612 Pesan Galat: Tidak dapat mengubah nilai balik 'ekspresi' karena ini bukan variabel Upaya dilakukan …

15
Hapus properti dalam suatu objek secara kekal
Saya menggunakan Redux. Di peredam saya, saya mencoba menghapus properti dari objek seperti ini: const state = { a: '1', b: '2', c: { x: '42', y: '43' }, } Dan saya ingin memiliki sesuatu seperti ini tanpa harus mengubah keadaan aslinya: const newState = { a: '1', b: '2', …

13
Enum dalam Javascript dengan ES6
Saya membangun kembali proyek Java lama di Javascript, dan menyadari bahwa tidak ada cara yang baik untuk melakukan enum di JS. Yang terbaik yang bisa saya dapatkan adalah: const Colors = { RED: Symbol("red"), BLUE: Symbol("blue"), GREEN: Symbol("green") }; Object.freeze(Colors); The constterus Colorsdari yang ditugaskan kembali, dan pembekuan mencegah bermutasi …

8
Keuntungan pemrograman stateless?
Saya baru-baru ini belajar tentang pemrograman fungsional (khususnya Haskell, tapi saya sudah membaca tutorial tentang Lisp dan Erlang juga). Sementara saya menemukan konsep yang sangat mencerahkan, saya masih tidak melihat sisi praktis dari konsep "tanpa efek samping". Apa manfaat praktisnya? Saya mencoba berpikir dalam pola pikir fungsional, tetapi ada beberapa …

7
Cepat membuat parameter metode bisa berubah?
Bagaimana cara mengatasi kesalahan ini tanpa membuat variabel tambahan? func reduceToZero(x:Int) -> Int { while (x != 0) { x = x-1 // ERROR: cannot assign to 'let' value 'x' } return x } Saya tidak ingin membuat variabel tambahan hanya untuk menyimpan nilai x. Apakah mungkin untuk melakukan apa …



6
Koleksi yang Tidak Dapat Diubah Java
Dari dokumentasi Java 1.6 Collection Framework : Koleksi yang tidak mendukung operasi modifikasi apa pun (seperti add, removedan clear) disebut sebagai tidak dapat dimodifikasi . [...] Koleksi yang juga menjamin bahwa tidak ada perubahan pada objek Collection yang akan terlihat disebut sebagai tidak dapat diubah . Kriteria kedua sedikit membingungkan …

6
Bagaimana cara membuat Kelas yang tidak dapat diubah?
Saya sedang membuat kelas yang tidak bisa diubah. Saya telah menandai semua properti sebagai hanya-baca. Saya memiliki daftar item di kelas. Meskipun jika properti adalah read-only, daftar dapat diubah. Mengekspos IE yang tak terhitung banyaknya dari daftar membuatnya tidak bisa diubah. Saya ingin tahu apa aturan dasar yang harus diikuti …
113 c#  .net  immutability 



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.