Dart:字符串
字符串:单双引号
String c = 'hello \'c\''; // hello 'c',单引号中使用单引号,需要转义\
String d = "hello 'c'"; // hello 'c',双引号中使用单引号,不需要转义
String e = "hello \“c\”"; // hello “c”,双引号中使用双引号,不需要转义
// 推荐定义字符串都用单引号
字符串模板
var a = '你好';
String b = 'hello $a'; // hello 你好
// 如果是个对象
String c = 'hello ${data.name}'; // hello 小明
字符串拼接
String a = 'hello';
String b = 'word';
print(a + b);
输出:helloword
var c = '''
a
b
c
''';
输出带换行的:
a
b
c
var a = StringBuffer();
a..write('hello')
..write(' word')
..write('!')
..writeAll(['a','b','c']);
输出:hello word!abc
字符串操作方法
// 查找搜索功能
var a = 'hello word';
print(a.contains('hello')); // 返回true,判断字符串内是由包含某个字符
print(a.contains('hello123')); // 返回false
print(a.startsWith('hell')); // 返回true,开始位置是否是hell
print(a.endsWith('word')); // 返回true,结束位置是否是word
print(a.indexOf('word')); // 返回6,从w开始的下标,中间空格也算1个字符。
print(a.substring(0,5)); // 返回hello,字符串取值,从下标0开始,取5个
print(a.split(',')); // 返回[hello, word],字符串根据某个字符转数组
print(a.toLowerCase()); // 字母转小写
print(a.toUpperCase()); // 字母转大写
print(a.isEmpty); // 是否为空,true空,false不为空
print(a.isNotEmpty); // 是否不为空,treu不为空,false为空
print(a.trim()); // 去除字符串的首尾空格
print(a.replaceAll('hello', '你好')); // 返回你好 word, 字符串替换