Ich lese C++ 101 Regeln Richtlinien und Best Practices, und unter Punkt 28, dass post increment-Operator sollte vermieden werden, wenn wir nicht den alten Wert benötigen der Variable, da dieser Operator eine Kopie davon erstellt, daher ein kleiner Leistungsverlust.Java-Postfix-Inkrement-Operator (i ++) ein neues Objekt erstellen
Ich frage mich, ob Java diese Operation auf die gleiche Weise gemacht hat, in diesem Fall Präfix-Operator sollte auch für For-Schleifen-Anweisungen bevorzugt werden (diejenigen, die möglicherweise nicht für eine for-each oder eine Lambda ForEach() -Anweisung geeignet sind)
Java-Spezifikationen sagen (§15.14.2):
der Wert des postfix Inkrementausdruck ist der Wert der variablen vor der neue Wert gespeichert wird
Gibt es zu irgendeinem Zeitpunkt während der Operation ein neues Objekt? Da wir etwas anderes als die Variable, die inkrementiert wurde, zurückgeben.
Verwenden Sie den Operator für primitive Werte oder numerische Referenztypwerte? – Savior
Ja, nach dem Postfixinkrement befinden sich 2 Objekte im Speicher - neuer und alter Wert. Alter Wert ist das Ergebnis eines Ausdrucks. – Ivan
Im Allgemeinen sind diese Art von Mikrooptimierungsfragen in Java bedeutungslos, da in der JVM eine Laufzeitoptimierung stattfindet. – azurefrog