Karakterlánc hozzáfűző operátorok

A += operátort és a concat() metódust használjuk, hogy hozzáfűzünk a dolgokat a Stringshez.


Utolsó felülvizsgálat: 2022.02.04 16:50


Ahogyan a Stringeket más adatobjektumokkal is összefűzheti a Karakterlánc-hozzáadó operátor segítségével, a += operátort és a concat() metódust is használhatja dolgok hozzáfűzéséhez egy Strings-hez. A += operátor és a concat() metódus ugyanúgy működik, csak az a kérdés, hogy melyik stílust részesíti előnyben. Az alábbi két példa mindkettőt illusztrálja, és ugyanazt a karakterláncot eredményezi:

String stringOne = "A long integer: ";
// a += használatával egy long változót hozzáad egy karakterlánchoz:
stringOne += 123456789;

vagy

String stringTwo = "A long integer: ";
// a concat() használatával long változót adunk egy karakterlánchoz:
stringTwo.concat(123456789);

Mindkét esetben a stringOne értéke "A long integer: 123456789". A + operátorhoz hasonlóan ezek az operátorok is hasznosak hosszabb karakterláncok összeállításához adatobjektumok kombinációjából.

Hardver szükséglet

  • Arduino kártya

Az áramkör

Ebben a példában nincs áramkör, bár a kártyát USB-n keresztül kell csatlakoztatni a számítógéphez, és az Arduino Software (IDE) soros monitor ablakának nyitva kell lennie.

A kód

/*
  Appending to Strings using the += operator and concat()

  Példák arra, hogyan lehet különböző adattípusokat hozzáfűzni a karakterláncokhoz

  created 27 Jul 2010
  modified 2 Apr 2012
  by Tom Igoe

  Ez a kód nyilvános.

  https://docs.arduino.cc/built-in-examples/strings/StringAppendOperator
*/

String stringOne, stringTwo;

void setup() {
  // Nyissa meg a soros kommunikációt, és várja meg, amíg megnyílik a port:
  Serial.begin(9600);
  while (!Serial) {
    ; // várja meg a soros port csatlakozását. Csak a natív USB-porthoz szükséges
  }

  stringOne = String("Sensor ");
  stringTwo = String("value");
  // send an intro:
  Serial.println("\n\nAppending to a String:");
  Serial.println();
}

void loop() {
  Serial.println(stringOne);  // nyomtatva:  "Sensor "

  // karakterlánc hozzáadása egy karakterlánchoz:
  stringOne += stringTwo;
  Serial.println(stringOne);  // nyomtatva: "Sensor value"

  // karakterlánc állandó hozzáadása egy karakterlánchoz:
  stringOne += " for input ";
  Serial.println(stringOne);  // nyomtatva: "Sensor value for input"

  // karakter állandó hozzáadása egy karakterlánchoz:
  stringOne += 'A';
  Serial.println(stringOne);   // nyomtatva: "Sensor value for input A"

  // egész szám állandó hozzáadása egy karakterlánchoz:
  stringOne += 0;
  Serial.println(stringOne);   // nyomtatva: "Sensor value for input A0"

  // karakterlánc állandó hozzáadása egy karakterlánchoz:
  stringOne += ": ";
  Serial.println(stringOne);  // nyomtatva: "Sensor value for input A0: "

  // egész szám változó hozzáadása egy karakterlánchoz:
  stringOne += analogRead(A0);
  Serial.println(stringOne);   // nyomtatva: "Sensor value for input A0: 456" vagy bármi legyen is az analogRead(A0)

  Serial.println("\n\nchanging the Strings' values");
  stringOne = "A long integer: ";
  stringTwo = "The millis(): ";

  // long egész szám állandó hozzáadása egy karakterlánchoz:
  stringOne += 123456789;
  Serial.println(stringOne);   // nyomtatva: "A long integer: 123456789"

  // a concat()-ot használva long egész szám változó hozzáadása egy karakterlánchoz:
  stringTwo.concat(millis());
  Serial.println(stringTwo); // nyomtatva: "The millis(): 43534" vagy vagy bármi legyen is a millis() értéke

  // ne csinálj semmit, amíg igaz:
  while (true);
}

Tudj meg többet

További alapvető oktatóanyagokat a beépített példák részben talál.

Felfedezheti a nyelvi referenciát is, az Arduino programozási nyelv részletes gyűjteményét.