释放双眼,带上耳机,听听看~!
String Character函数字符串函数 charAt() 和 setCharAt() 用来获得或者设置字符串里给定位置的字符数值。
目录
简介
- 字符串函数 charAt() 和 setCharAt() 用来获得或者设置字符串里给定位置的字符数值。
- 这些函数能帮助你搜索和替换给定的字符。例如,下面把字符串的冒号换成一个等号:
String reportString = "SensorReading: 456";
int colonPosition = reportString.indexOf(':');
reportString.setCharAt(colonPosition, '=');
- 这个例子用来检查第二个单词的第一个字母是不是”B”:
String reportString = "Franklin, Benjamin";
int spacePosition = reportString.indexOf(' ');
if (reportString.charAt(spacePosition + 1) == 'B') {
Serial.println("You might have found the Benjamins.")
}
- 注意:如果你尝试获得字符值 charAt 或者设置字符值 setCharAt(),而这个数值的长度长过字符串的长度,你会得到不可预料的结果。如果你不确定,用length()函数查一下你想设置或者获得的位置是不是少于字符串的长度。
硬件要求
- Arduino or Genuino 开发板
电路
- 这个例子不需要连接额外的电路,除了你的开发板需要连接到你的电脑,并且打开Arduino IDE的串口监视器窗口。
样例代码
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
Serial.println("\n\nString charAt() and setCharAt():");
}
void loop() {
// make a string to report a sensor reading:
String reportString = "SensorReading: 456";
Serial.println(reportString);
// the reading's most significant digit is at position 15 in the reportString:
char mostSignificantDigit = reportString.charAt(15);
String message = "Most significant digit of the sensor reading is: ";
Serial.println(message + mostSignificantDigit);
// add blank space:
Serial.println();
// you can alo set the character of a string. Change the : to a = character
reportString.setCharAt(13, '=');
Serial.println(reportString);
// do nothing while true:
while (true);
}