Gyakorlat – Növekményes és csökkenő értékek
Az ebben a modulban megismert utolsó alapművelet az értékek növelése és csökkentése speciális operátorok használatával, amelyek szimbólumok kombinációi.
Növekmény és csökkenés
Gyakran növelnie és/vagy csökkentenie kell az értékeket, különösen akkor, ha olyan hurkoló logikát vagy kódot ír, amely adatstruktúrákkal kommunikál.
Az += operátor hozzáadja és hozzárendeli az operátor jobb oldalán lévő értéket az operátor bal oldalán lévő értékhez. A következő kódrészlet második és harmadik sora tehát megegyezik:
int value = 0; // value is now 0.
value = value + 5; // value is now 5.
value += 5; // value is now 10.
Az ++ operátor 1-zel növeli a változó értékét. A következő kódrészlet második és harmadik sora tehát megegyezik:
int value = 0; // value is now 0.
value = value + 1; // value is now 1.
value++; // value is now 2.
Ugyanezek a technikák használhatók kivonásra, szorzásra és egyebekre is. Az alábbi gyakorlat lépései kiemelnek néhányat.
Megjegyzés:
Az olyan operátorok, mint +=, -=, *=, ++ és --összetett hozzárendelési operátorok, mivel az eredmény változóhoz való hozzárendelése mellett egyes műveleteket is összekapcsolnak. Az += operátort kifejezetten összeadás-hozzárendelési operátornak nevezzük.
Kód írása egy érték növeléséhez és dekrementálásához
Jelölje ki a C#-kódszerkesztőben korábban írt összes kódot, és a Törlés vagy a Backspace billentyűkombinációt lenyomva törölje azt.
Írja be a következő kódot a C#-kódszerkesztőbe:
int value = 1; value = value + 1; Console.WriteLine("First increment: " + value); value += 1; Console.WriteLine("Second increment: " + value); value++; Console.WriteLine("Third increment: " + value); value = value - 1; Console.WriteLine("First decrement: " + value); value -= 1; Console.WriteLine("Second decrement: " + value); value--; Console.WriteLine("Third decrement: " + value);Futtassa a kódot. A következő kimenetnek kell megjelennie:
First increment: 2 Second increment: 3 Third increment: 4 First decrement: 3 Second decrement: 2 Third decrement: 1
Megjegyzés:
A "második növekményben" használt value += 1;. Az összeg növeléséhez azonban bármilyen literális int értéket (vagy változót) használhatott volna. Ugyanez igaz a "második decrement" esetében is: value -= 1;.
A növekmény és csökkentés operátorok elhelyezése
A növekményes és a csökkenő operátorok is érdekes minőségűek – pozíciójuktól függően az értékük lekérése előtt vagy után hajtják végre a műveletet. Más szóval, ha az operátort az érték előtt használja, akkor ++valuea növekmény az érték lekérése előtt következik be. Hasonlóképpen, value++ az érték lekérése után is növeli az értéket.
A növekmény operátor használata az érték előtt és után
Törölje a kódot az előző lépésekből, és írja be a következő kódot a C# kódszerkesztőbe:
int value = 1; value++; Console.WriteLine("First: " + value); Console.WriteLine($"Second: {value++}"); Console.WriteLine("Third: " + value); Console.WriteLine("Fourth: " + (++value));Futtassa a kódot. A következő kimenetnek kell megjelennie:
First: 2 Second: 2 Third: 3 Fourth: 4
Figyelje meg ezt a kódsort:
Console.WriteLine($"Second: {value++}");
Ennek a sornak két lépése van:
- Kérje le a változó
valueaktuális értékét, és használja azt a sztring interpolációs műveletében. - Növelje az értéket.
A következő kódsor megerősíti, hogy az érték valójában növekedett.
Console.WriteLine("Third: " + value);
Ezzel szemben vegye figyelembe a kód utolsó sorát:
Console.WriteLine("Fourth: " + (++value));
Itt a műveletek sorrendje vált, mert az ++ operátor az operandus valueelé kerül.
- Növelje az értéket.
- Kérje le a változó
valueúj növekményes értékét, és használja azt a sztringműveletben.
Bár nem feltétlenül szükséges, zárójelet adott hozzá a kifejezéshez (++value) az olvashatóság javítása érdekében.
+ A sok operátor egymás mellett való megtekintése úgy tűnik, hogy más fejlesztők félreérthetik. Az ilyen stilisztikai döntések szubjektívek. Mivel azonban a kódot egyszer fogja megírni, de többször is elolvassa, az olvashatóságot kell előnyben részesítenie.
Összefoglalás
A C#-ban végzett matematikai műveletekről eddig az alábbiakat tanulta:
- Használjon összetett hozzárendelési operátorokat, mint például
+=,-=,*=,++és--, hogy matematikai műveleteket hajtson végre, például növelést vagy csökkentést, majd rendelje hozzá az eredményt az eredeti változóhoz. - A növekményes és a csökkenő operátorok eltérően működnek attól függően, hogy az operátor az operandus előtt vagy után van-e.