Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Definiera och Använda en Struktur | Strukturer och Enumeratorer
C# Bortom Grunderna

bookDefiniera och Använda en Struktur

Du definierar en struktur med följande syntax:

index.cs

index.cs

copy
1234567
struct structureName { public datatype fieldName1; public datatype fieldName2; public datatype fieldName3; ... }

Till exempel kan du definiera en struktur för att lagra viss studentdata:

index.cs

index.cs

copy
12345678
struct Student { public int id; public float age; public string name; public string course; public char grade; }

För att lagra data behöver du skapa en instans (även kallad ett objekt) med denna struktur. En struktur är i grunden en anpassad datatyp och kan därför behandlas som en sådan. För att skapa ett nytt objekt av strukturen använder du följande syntax:

index.cs

index.cs

copy
1
structName variableName;

Du kan skapa flera objekt av klassen Student, vilka alla kan lagra data:

index.cs

index.cs

copy
123
Student student1; Student student2; Student student3;

Varje objekt du har skapat har de fält som definieras i strukturen Student och du kan lagra och komma åt data från dessa fält med syntaxen variableName.fieldName. Till exempel kan du komma åt och skriva ut fältet name för student2:

index.cs

index.cs

copy
1
Console.WriteLine(student2.name);

När ett tomt objekt skapas får fälten nollvärden beroende på deras datatyper:

  1. string - tom sträng "";
  2. char - tom tecken '';
  3. int - 0;
  4. float - 0.0;
  5. bool - false.

Därför kommer student2.name att ge ett tomt resultat.

Du kan lagra data i det med tilldelningsoperatorn (=):

index.cs

index.cs

copy
1
student2.name = "Alex";

På detta sätt kan du lagra data i alla tre objekten:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839
using System; struct Student { public int id; public float age; public string name; public string course; public char grade; } class ConsoleApp { static void Main(string[] args) { Student student1; student1.id = 1; student1.name = "Abigail"; student1.age = 21; student1.course = "C#"; student1.grade = 'A'; Console.WriteLine($"{student1.name} is {student1.age} years old."); Student student2; student2.id = 2; student2.name = "Alex"; student2.age = 22; student2.course = "C#"; student2.grade = 'B'; Console.WriteLine($"{student2.name} has a {student2.grade} in {student2.course}."); Student student3; student3.id = 3; student3.name = "Jennifer"; student3.age = 19; student3.course = "C#"; student3.grade = 'A'; Console.WriteLine($"{student3.name} studies {student3.course}."); } }
Note
Observera

Uttrycket variableName.fieldName kan behandlas som en variabel och det är därför giltigt att använda det i strängformatering, precis som i exemplet ovan.

1. Vilket nyckelord används för att definiera en struktur?

2. Vad blir utmatningen av följande kod?

question mark

Vilket nyckelord används för att definiera en struktur?

Select the correct answer

question mark

Vad blir utmatningen av följande kod?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 2

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Awesome!

Completion rate improved to 2.04

bookDefiniera och Använda en Struktur

Svep för att visa menyn

Du definierar en struktur med följande syntax:

index.cs

index.cs

copy
1234567
struct structureName { public datatype fieldName1; public datatype fieldName2; public datatype fieldName3; ... }

Till exempel kan du definiera en struktur för att lagra viss studentdata:

index.cs

index.cs

copy
12345678
struct Student { public int id; public float age; public string name; public string course; public char grade; }

För att lagra data behöver du skapa en instans (även kallad ett objekt) med denna struktur. En struktur är i grunden en anpassad datatyp och kan därför behandlas som en sådan. För att skapa ett nytt objekt av strukturen använder du följande syntax:

index.cs

index.cs

copy
1
structName variableName;

Du kan skapa flera objekt av klassen Student, vilka alla kan lagra data:

index.cs

index.cs

copy
123
Student student1; Student student2; Student student3;

Varje objekt du har skapat har de fält som definieras i strukturen Student och du kan lagra och komma åt data från dessa fält med syntaxen variableName.fieldName. Till exempel kan du komma åt och skriva ut fältet name för student2:

index.cs

index.cs

copy
1
Console.WriteLine(student2.name);

När ett tomt objekt skapas får fälten nollvärden beroende på deras datatyper:

  1. string - tom sträng "";
  2. char - tom tecken '';
  3. int - 0;
  4. float - 0.0;
  5. bool - false.

Därför kommer student2.name att ge ett tomt resultat.

Du kan lagra data i det med tilldelningsoperatorn (=):

index.cs

index.cs

copy
1
student2.name = "Alex";

På detta sätt kan du lagra data i alla tre objekten:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839
using System; struct Student { public int id; public float age; public string name; public string course; public char grade; } class ConsoleApp { static void Main(string[] args) { Student student1; student1.id = 1; student1.name = "Abigail"; student1.age = 21; student1.course = "C#"; student1.grade = 'A'; Console.WriteLine($"{student1.name} is {student1.age} years old."); Student student2; student2.id = 2; student2.name = "Alex"; student2.age = 22; student2.course = "C#"; student2.grade = 'B'; Console.WriteLine($"{student2.name} has a {student2.grade} in {student2.course}."); Student student3; student3.id = 3; student3.name = "Jennifer"; student3.age = 19; student3.course = "C#"; student3.grade = 'A'; Console.WriteLine($"{student3.name} studies {student3.course}."); } }
Note
Observera

Uttrycket variableName.fieldName kan behandlas som en variabel och det är därför giltigt att använda det i strängformatering, precis som i exemplet ovan.

1. Vilket nyckelord används för att definiera en struktur?

2. Vad blir utmatningen av följande kod?

question mark

Vilket nyckelord används för att definiera en struktur?

Select the correct answer

question mark

Vad blir utmatningen av följande kod?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 2
some-alt