Arduino 字符串对象

17 Mar 2025 | 5 分钟阅读

Arduino 中的对象是什么?

一个对象就像一个变量,它指向一个保存某些数据的内存位置。 与对象关联的函数称为成员函数。 因此,我们可以使对象执行一些操作。

例如:

begin()、print() 和 println() 是使用 serial 对象声明的函数。 Serial 之后的句点(print() 等)指定我们正在访问 serial 对象中的一些成员。 成员可以是函数或变量。

print() 和 println() 函数后面的括号决定了在 serial 中调用的函数。 这些函数不能单独在代码的全局范围内声明。 因此,它们与 serial 对象一起声明为 Serial.print() 和 Serial.println()。

字符串对象

String 对象允许我们存储字符数组并对其执行操作。 String 对象比常规 String 占用更多内存。

String 对象总是用大写的 'S' 显示。 它产生 String 类的实例。

它可以由不同的数据类型构造,这些数据类型列在下面

  • 使用特定基数的常量整数
  • 使用特定基数的长整数
  • String 对象的实例
  • 用单引号括起来的常量字符
  • 用双引号括起来的常量字符串
  • 浮点数和双精度浮点数

字符串中指定的数字的默认基数为 10。 例如,

它创建一个由数字 15 的 ASCII 表示形式组成的字符串。

要指定基数不是 10 的数字,String 可以创建为

它将给我们字符串“F”。 它表示十进制数 15 的十六进制转换。

我们也可以用 BIN 表示 String。 例如,

它将给我们字符串“1111”。 它表示十进制数 15 的十六进制转换。

语法是

其中,

:它表示需要格式化或表示字符串的值。

数据类型为字节、无符号整数、字符、浮点数、双精度浮点数、无符号长整型、长整型、整型和字符串。

基数:它表示格式化整数值所需的基数。 例如,HEX、BIN 等。

基数是可选的。

小数位数:它指定所需的小数位数,这仅在值是双精度或浮点数时才需要。

带有 String 对象的函数

我们可以将各种函数与 String 一起使用。

  • charAT()

它用于访问特定字符。

语法是

其中,

thisString是已声明的变量

n也是一个变量

允许的数据类型是无符号整数

上述语法将返回指定字符串的第 n 个字符。

  • compareTo()

它用于比较两个字符串。 指定的字符串使用字符的 ASCII 值进行比较。

语法是

其中,

thisStringmyString是已声明的变量

如果 thisString 在 myString 之前,则上述语法将返回一个负数

如果 thisString 在 myString 之后,它将返回一个正数

  • endsWith()

它测试一个字符串是否以另一个字符串的字符结尾

语法是

其中,

thisStringmyString是已声明的变量

如果 thisString 以 myString 的字符结尾,它将返回true。 否则,它将返回false

  • startsWith()

它测试一个字符串是否以另一个字符串的字符开头

语法是

其中,

thisStringmyString是已声明的变量

如果 thisString 以 myString 的字符开头,它将返回true。 否则,它将返回false

  • toLowerCase()

它获取指定字符串的小写版本。

语法是

其中,

thisString是已声明的变量

  • toUpperCase()

它获取指定字符串的大写版本。

语法是

其中,

thisString是已声明的变量

  • equals()

它比较两个字符串的相等性。 比较非常敏感,其中字符串“Arduino”不等于字符串“ARDUINO”。

语法是

其中,

thisStringmyString是变量

如果 thisString 等于 myString,它将返回true。 否则,它将返回false

  • getBytes()

它将字符串的字符复制到提供的缓冲区中。

语法是

其中,

thisString是已声明的变量

缓冲区:字符被复制到缓冲区中。 所需的数据类型是字节

长度:它表示缓冲区的大小。 所需的数据类型是无符号整数

  • lastIndexOf()

它在另一个字符串中定位字符串或字符。

语法是

其中,

thisString是已声明的变量

值:它包含要搜索的特定值。 所需的数据类型是字符串字符

from:它被定义为要向后工作 的索引

  • substring()

它被声明为获取特定字符串的子字符串。

语法是

其中,

thisString是已声明的变量

from:它被定义为索引,子字符串将从此处开始

to:它也是在结束子字符串之前的索引。 它是可选的。

  • toInt()

它将Arduino中的有效字符串转换为整数类型。

语法是

其中,

thisString是变量

所需的数据类型是长整型。 如果转换无效或字符串没有以整数开头,它将返回零。

  • toFloat()

它将 Arduino 中的有效字符串转换为浮点数。

例如,字符串“150”将转换为“150.00”

语法是

其中,

thisString是变量

所需的数据类型是浮点数。 如果转换无效或字符串没有以数字开头,它将返回零。

  • trim()

它通过删除多余的空格来修改字符串。

语法是

其中,

thisString是变量

Code Example

让我们用两个例子来理解 String 对象。

示例 1

让我们使用charAt()函数。

请看下面的代码

输出:t

t 是索引为 8 的字符,它在 charAt() 函数中声明。

示例 2

让我们使用 concat 函数。

concat() - concat() 函数用于组合字符串。

请看下面的代码

输出

Arduino String Object

同样,我们也可以使用其他的 String 对象函数。


下一主题闪烁 LED