Als «immutability» getaggte Fragen

Unveränderlichkeit ist die Unfähigkeit, Daten nach ihrer Erstellung zu ändern. Änderungen werden stattdessen durch Kopieren der Daten vorgenommen. Eine Eigenschaft unveränderlicher Daten ist, dass sie * referenziell transparent * sind.




17
Was ist mit unveränderlich gemeint?
Dies könnte die dümmste Frage sein, die jemals gestellt wurde, aber ich denke, dass es für einen Java-Neuling ziemlich verwirrend ist. Kann jemand klarstellen, was unter unveränderlich zu verstehen ist ? Warum ist ein Stringunveränderlicher? Was sind die Vor- und Nachteile der unveränderlichen Objekte? Warum sollte ein veränderliches Objekt wie …

15
Ist eine Java-Zeichenfolge wirklich unveränderlich?
Wir alle wissen, dass dies Stringin Java unveränderlich ist, überprüfen Sie jedoch den folgenden Code: 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
Was ist der beste Name für eine nicht mutierende Add-Methode für eine unveränderliche Sammlung?
Entschuldigung für den Waffeltitel - wenn ich einen prägnanten Titel finden könnte, müsste ich die Frage nicht stellen. Angenommen, ich habe einen unveränderlichen Listentyp. Es gibt eine Operation, Foo(x)die am Ende eine neue unveränderliche Liste mit dem angegebenen Argument als zusätzliches Element zurückgibt. Um eine Liste von Zeichenfolgen mit den …

3
Was macht der Kommentar "Frozen_String_Literal: True"?
Dies ist der rspecbinstub in meinem Projektverzeichnis. #!/usr/bin/env ruby begin load File.expand_path("../spring", __FILE__) rescue LoadError end # frozen_string_literal: true # # This file was generated by Bundler. # # The application 'rspec' is installed as part of a gem, and # this file is here to facilitate running it. # …

26
Unveränderlichkeit von Strings in Java
Betrachten Sie das folgende Beispiel. String str = new String(); str = "Hello"; System.out.println(str); //Prints Hello str = "Help!"; System.out.println(str); //Prints Help! In Java sind String-Objekte jetzt unveränderlich. Wie kommt es dann, dass dem Objekt strder Wert "Hilfe!" Zugewiesen werden kann? Widerspricht dies nicht der Unveränderlichkeit von Strings in Java? …



16
Unveränderliche vs veränderliche Typen
Ich bin verwirrt darüber, was ein unveränderlicher Typ ist. Ich weiß, dass das floatObjekt als unveränderlich angesehen wird, mit dieser Art von Beispiel aus meinem Buch: class RoundFloat(float): def __new__(cls, val): return float.__new__(cls, round(val, 2)) Wird dies aufgrund der Klassenstruktur / -hierarchie als unveränderlich angesehen? Die Bedeutung floatsteht an der …

24
Wie erstelle ich ein unveränderliches Objekt in Python?
Obwohl ich das nie gebraucht habe, ist mir nur aufgefallen, dass das Erstellen eines unveränderlichen Objekts in Python etwas schwierig sein kann. Sie können nicht einfach überschreiben __setattr__, da Sie dann nicht einmal Attribute in der festlegen können __init__. Das Unterklassen eines Tupels ist ein Trick, der funktioniert: class Immutable(tuple): …


10
Veränderliche gegen unveränderliche Objekte
Ich versuche, mich mit veränderlichen und unveränderlichen Objekten zu beschäftigen. Die Verwendung von veränderlichen Objekten führt zu viel Druck (z. B. Rückgabe einer Reihe von Zeichenfolgen aus einer Methode), aber ich habe Probleme zu verstehen, welche negativen Auswirkungen dies hat. Was sind die Best Practices für die Verwendung veränderlicher Objekte? …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.