Es tut mir leid, wenn meine Frage dumm ist, ich bin neu in cDifferenz zwischen Liste <T> und Liste <T> = new List <T> in C#
#Ich will wissen, was ist der genaue Unterschied zwischen dem, wenn wir eine Liste Variable erstellen wie diese
List<T> lstStudents;
und wenn wir eine Liste wie diese
List<T>= new List<T>();
ich gerade heraus erstellen gefunden, dass selbst wenn wir creat ea Variable ohne Initialisieren ein Objekt, um es, noch würden wir in der Lage sein, neue Objekte hinzufügen, wenn es so ist, dann ist das, was ist der Unterschied zwischen diesen beiden lassen Sie mich das Szenario mit einigen Code erklären, die ich versuchte,
List<Product> product = new List<Product> {
new Product() { ProductID = 1, ProductName = "A" }
, new Product() { ProductID = 2, ProductName = "B" }
, new Product() { ProductID = 3, ProductName = "C" }
, new Product() { ProductID = 4, ProductName = "D" }
, new Product() { ProductID = 5, ProductName = "E" }
};
jetzt, wenn ich hinzufügen, eine Variable wie diese
List<Product> p = product;
ich bin noch in der Lage Objekte in diesen variablen
p.Add(new Product { ProductID = 3 });
Bitte klären meine Zweifel hinzuzufügen.
Danke
Es tut mir leid kann ich etwas falsch in diesem Code
public class Students
{
public string Name { get; set; }
public int StudentId { get; set; }
}
List<Product> product = new List<Product> {
new Product() { ProductID = 1, ProductName = "A" }
, new Product() { ProductID = 2, ProductName = "B" }
, new Product() { ProductID = 3, ProductName = "C" }
, new Product() { ProductID = 4, ProductName = "D" }
, new Product() { ProductID = 5, ProductName = "E" }
};
List<Product> p = product;
p.Add(new Product { ProductID = 3 });
, wenn ich dieses laufen tue ich erhalte 6 Artikel statt 5
die erste doesnt * * Erstellen Sie eine Liste überhaupt, es ist nur die var und seine Art erklärt. 'new' erzeugt/initialisiert das eigentliche Objekt – Plutonix
Der erste deklariert eine Variable vom Typ' List ', die auf 'null' initialisiert wird, vorausgesetzt, der Typ' T' ist definiert. Der zweite ist ein Syntaxfehler. –
Es gibt kein Beispiel von "ohne ein Objekt zu initialisieren, noch wären wir in der Lage, neue Objekte hinzuzufügen" - was wahrscheinlich hervorheben würde, was "Initialisierung" eigentlich für Sie bedeutet (wahrscheinlich anders als übliche Bedeutung) –