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.
Aus der Collections Framework-Übersicht : Kollektionen, die keine Änderung (wie unterstützen add, removeund clear) , werden als nicht änderbar . Sammlungen, die nicht unveränderbar sind, können geändert werden . Sammlungen, die zusätzlich garantieren, dass keine Änderung des CollectionObjekts sichtbar ist, werden als unveränderlich bezeichnet . Nicht unveränderliche Sammlungen sind veränderlich …
Ich habe diese API-Funktion: public ResultEnum DoSomeAction(string a, string b, DateTime c, OtherEnum d, string e, string f, out Guid code) Ich mag es nicht Weil die Parameterreihenfolge unnötig wichtig wird. Es wird schwieriger, neue Felder hinzuzufügen. Es ist schwieriger zu sehen, was herumgereicht wird. Es ist schwieriger, die Methode …
Gibt es eine unveränderliche Alternative zu den primitiven Arrays in Java? Das Erstellen eines primitiven Arrays finalhindert einen nicht daran, so etwas zu tun final int[] array = new int[] {0, 1, 2, 3}; array[0] = 42; Ich möchte, dass die Elemente des Arrays unveränderlich sind.
Ein gefrorenes Set ist ein Frozenset. Eine eingefrorene Liste könnte ein Tupel sein. Was wäre ein eingefrorenes Diktat? Ein unveränderliches, hashbares Diktat. Ich denke, es könnte so etwas sein collections.namedtuple, aber das ist eher ein Diktat mit eingefrorenen Schlüsseln (ein Diktat mit halbgefrorenem Schlüssel). Ist es nicht? A "frozendict" sollte …
Ich verwende automatisch implementierte Eigenschaften. Ich denke, der schnellste Weg, um Folgendes zu beheben, besteht darin, meine eigene Hintergrundvariable zu deklarieren. public Point Origin { get; set; } Origin.X = 10; // fails with CS1612 Fehlermeldung: Der Rückgabewert von 'Ausdruck' kann nicht geändert werden, da es sich nicht um eine …
Ich benutze Redux. In meinem Reduzierer versuche ich, eine Eigenschaft aus einem Objekt wie diesem zu entfernen: const state = { a: '1', b: '2', c: { x: '42', y: '43' }, } Und ich möchte so etwas haben, ohne den ursprünglichen Zustand mutieren zu müssen: const newState = { …
Ich habe ein altes Java-Projekt in Javascript neu erstellt und festgestellt, dass es in JS keine gute Möglichkeit gibt, Aufzählungen durchzuführen. Das Beste, was ich mir einfallen lassen kann, ist: const Colors = { RED: Symbol("red"), BLUE: Symbol("blue"), GREEN: Symbol("green") }; Object.freeze(Colors); Das consthält Colorsvon neu zugewiesen wird, und das …
Ich habe kürzlich etwas über funktionale Programmierung gelernt (speziell Haskell, aber ich habe auch Tutorials zu Lisp und Erlang durchgearbeitet). Obwohl ich die Konzepte sehr aufschlussreich fand, sehe ich immer noch nicht die praktische Seite des Konzepts "keine Nebenwirkungen". Was sind die praktischen Vorteile davon? Ich versuche, in der funktionalen …
Wie kann ich mit diesem Fehler umgehen, ohne eine zusätzliche Variable zu erstellen? func reduceToZero(x:Int) -> Int { while (x != 0) { x = x-1 // ERROR: cannot assign to 'let' value 'x' } return x } Ich möchte keine zusätzliche Variable erstellen, nur um den Wert von x …
Ich habe anscheinend Probleme, Daten in ein Statusarray zu verschieben. Ich versuche es so zu erreichen: this.setState({ myArray: this.state.myArray.push('new value') }) Aber ich glaube, das ist falsch und verursacht Probleme mit der Veränderlichkeit?
Aus der Java 1.6 Collection Framework-Dokumentation : Kollektionen , die (wie etwa keine Änderungsoperationen unterstützen add, removeund clear) , werden als nicht änderbar . [...] Sammlungen, die zusätzlich garantieren, dass keine Änderung des Sammlungsobjekts jemals sichtbar wird, werden als unveränderlich bezeichnet . Das zweite Kriterium verwirrt mich ein bisschen. Welche …
Ich arbeite daran, eine unveränderliche Klasse zu schaffen. Ich habe alle Eigenschaften als schreibgeschützt markiert. Ich habe eine Liste von Elementen in der Klasse. Wenn die Eigenschaft schreibgeschützt ist, kann die Liste geändert werden. Das Anzeigen der IEnumerable der Liste macht sie unveränderlich. Ich wollte wissen, nach welchen Grundregeln man …
Mein Verständnis war, dass Python-Strings unveränderlich sind. Ich habe den folgenden Code ausprobiert: a = "Dog" b = "eats" c = "treats" print a, b, c # Dog eats treats print a + " " + b + " " + c # Dog eats treats print a # Dog …
Ich bin auf ein Problem gestoßen, bei dem ich die Anfangswerte eines Momentobjekts speichern muss, aber ich habe Probleme, zu verhindern, dass sich meine Variable zusammen mit dem ursprünglichen Objekt ändert. Leider funktioniert Object.freeze () nicht, da moment.js einen Fehler "Ungültiges Datum" zurückgibt, wenn ich versuche, dies zu formatieren.
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.