Na linguagem Dart, String é usada para representar o tipo de string e aspas simples ou duplas podem ser usadas para representar o valor da string. Por exemplo, os códigos a seguir para declarar variáveis de tipo String estão corretos.
String s1 = 'hello world';
String s2 = "I love you.";
var s3 = "Who are you?";
A vantagem de usar aspas simples e aspas duplas para representar sequências é que se a sequência contiver aspas simples, aspas duplas podem ser usadas para representar a sequência e se a sequência contiver aspas duplas, aspas simples podem ser usadas para representar a sequência.
String ss1 = 'This is an "Apple"'; // 字符串中包含双引号
String ss2 = "I've an apple"; // 字符串中包含单引号
No entanto, há outro caso em que a string contém aspas duplas e aspas simples. Nesse caso, você precisa usar caracteres de escape, ou seja, adicionar aspas duplas ou aspas simples após a barra invertida (\). O código é o seguinte:
var s1 = "It's my \"coat\""; // 反斜杠后面加双引号,可以输出双引号
var s2 = 'It\'s my "coat"'; // 反斜杠后面加单引号,可以输出单引号
Se quiser concatenar strings, você pode usar diretamente o sinal de mais (+), se as strings concatenadas forem todos valores, você pode omitir o sinal de mais, o código é o seguinte:
String s1 = "I ";
String s2 = "love ";
String s3 = "you.";
var ss1 = s1 + s2 + s3; // 连接字符串
var ss2 = "I" " love" " you."; // 连接字符串(省略加号)
Se o conteúdo da string for relativamente grande e o formato da entrada for preservado, você pode usar 3 pares de aspas simples ou 3 pares de aspas duplas para delimitar a string, de modo que o formato da string no arquivo de código-fonte seja preservado na saída. Incluindo quebras de linha e recuo. código mostrado abaixo:
var s1 = '''
hello
world
I love you.
''';
var s2 = """
hello
world
I love you.
""";
Em alguns casos, queremos manter o conteúdo original da string. Mesmo se houver um caractere de escape na string, ele será gerado como o conteúdo original. Para atender a esse requisito, precisamos adicionar r antes da string. O código é o seguinte:
var s = r'hello\nworld';
print(s); // 输出hello\nworld
A linguagem Dart não oferece suporte à conexão de strings com outros tipos de valores. Se você deseja conectar strings com outros tipos de valores, geralmente pode usar um dos dois métodos a seguir.
-
Converta outros tipos de valores ou variáveis em strings
-
Use $ na string para incorporar outros tipos de variáveis na string
Se a string incorporada for uma propriedade em um objeto, em vez de uma variável simples, você precisa adicionar um par de chaves após $ para incluir a propriedade, como $ {obj.name}.
int n = 20;
int m = 30;
// 下面代码中,将n嵌入到字符串中,将m转换为字符串,然后通过“+”进行连接
var value = "n = $n, bitLength = ${n.bitLength} m = " + m.toString();
print(value);
Este exemplo demonstra um uso mais detalhado do tipo de string integrado.
void main() {
var s1 = 'hello world';
var s2 = "I love you.";
var s3 = "It's your coat.";
var s4 = 'This is your "coat"';
print(s3);
print(s4);
var s5 = "It's my \"coat\"";
print(s5);
// 字符串连接
var s6 = s1 + s2 + s3 ;
print(s6);
var s7 = "hello" "world";
print(s7);
// 多行字符串
var s8 = '''
hello
world
I love you.
''';
var s9 = """
hello
world
I love you.
""";
print(s8);
print(s9);
// 原始格式的字符串
var s10 = r'hello\nworld'; // raw string
print(s10);
const n1 = 50;
const n2 = 30;
var sum = n1 + n2;
var mul = n1 * n2;
// 将变量嵌入字符串
var value = "$n1 + $n2 = $sum\n$n1 * $n2 = $mul";
print(value);
}
O resultado da corrida é mostrado na Figura 1.
Figura 1 Demonstração do uso do tipo string
Se você estiver interessado neste artigo, pode adicionar a conta pública do WeChat do professor Li Ning (Unitymarvel):
Siga a conta oficial da Geek Origin para obter mais vídeos e artigos técnicos gratuitos.