Preguntas etiquetadas con immutability

La inmutabilidad es la incapacidad de modificar los datos después de que se hayan creado. En su lugar, las modificaciones se realizan copiando los datos. Una propiedad de los datos inmutables es que es * referencialmente transparente *.

400
¿Qué se entiende por inmutable?

Esta podría ser la pregunta más tonta que se haya hecho, pero creo que es bastante confuso para un novato en Java. ¿Alguien puede aclarar qué se entiende por inmutable ? ¿Por qué es un Stringinmutable? ¿Cuáles son las ventajas / desventajas de los objetos inmutables? ¿Por qué debería...

399
¿Es una cadena Java realmente inmutable?

Todos sabemos que Stringes inmutable en Java, pero verifique el siguiente código: 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 =...

218
Inmutabilidad de cadenas en Java

Considere el siguiente ejemplo. String str = new String(); str = "Hello"; System.out.println(str); //Prints Hello str = "Help!"; System.out.println(str); //Prints Help! Ahora, en Java, los objetos String son inmutables. Entonces, ¿cómo strpuede asignarse el valor del objeto "Ayuda!". ¿No...

186
Tipos inmutables vs mutables

Estoy confundido sobre lo que es un tipo inmutable. Sé que el floatobjeto se considera inmutable, con este tipo de ejemplo de mi libro: class RoundFloat(float): def __new__(cls, val): return float.__new__(cls, round(val, 2)) ¿Se considera que esto es inmutable debido a la estructura / jerarquía...

181
¿Cómo hacer un objeto inmutable en Python?

Aunque nunca he necesitado esto, me llamó la atención que hacer un objeto inmutable en Python podría ser un poco complicado. No puede anular simplemente __setattr__, porque entonces ni siquiera puede establecer atributos en el __init__. Subclasificar una tupla es un truco que funciona: class...

173
Objetos mutables vs inmutables

Estoy tratando de entender los objetos mutables vs inmutables. El uso de objetos mutables recibe mucha mala prensa (por ejemplo, devolver una serie de cadenas de un método) pero tengo problemas para comprender cuáles son los impactos negativos de esto. ¿Cuáles son las mejores prácticas en torno al...

170
Colección inmutable vs inmodificable

Desde el Resumen del marco de colecciones : Las colecciones que no admiten operaciones de modificación (como add, removey clear) se denominan no modificables . Las colecciones que no son inmodificables son modificables . Las colecciones que además garantizan que ningún cambio en el...

158
Matriz inmutable en Java

¿Existe una alternativa inmutable a las matrices primitivas en Java? Hacer una matriz primitiva en finalrealidad no impide que uno haga algo como final int[] array = new int[] {0, 1, 2, 3}; array[0] = 42; Quiero que los elementos de la matriz sean

158
¿Qué sería un "dict congelado"?

Un conjunto congelado es un conjunto congelado. Una lista congelada podría ser una tupla. ¿Qué sería un dict congelado? Un dict inmutable, hashable. Supongo que podría ser algo así collections.namedtuple, pero eso es más como un dict de teclas congeladas (un dict medio congelado). ¿No es...