【Flutter】Dart 数据类型 字符串类型 ( 字符串定义 | 字符串拼接 | 字符串 API 调用 )

举报
韩曙亮 发表于 2022/01/11 01:49:31 2022/01/11
【摘要】 文章目录 I . 字符串定义I . 字符串拼接III . 字符串 API 调用IV . 字符串 Demo 示例 I . 字符串定义 使用单引号 ’ ’ 和...



I . 字符串定义



使用单引号 ’ ’ 和 双引号 " " 都可以定义字符串 ;

//字符串定义 : 既可以使用单引号 , 也可以使用双引号
String str_1 = '单引号定义字符串';
String str_2 = "双引号定义字符串";

  
 
  • 1
  • 2
  • 3


I . 字符串拼接



1 . 使用 “$” 进行字符串拼接 : 在单引号或双引号字符串中 , 使用 $变量名称 的方式 , 可以将变量名称代表的内容拼接到字符串中 ;

String str_3 = "str_1 : $str_1 str_2 : $str_2";

//使用 $ 拼接字符串 : str_1 : 单引号定义字符串 str_2 : 双引号定义字符串
print("使用 \$ 拼接字符串 : " + str_3);

  
 
  • 1
  • 2
  • 3
  • 4

2 . 使用 “+” 运算符 : 使用 + 运算符 可以拼接字符串 , 该种方式与 Java 类似 ;

String str_4 = "str_1 : " + str_1 + " , str_2 : " + str_2;

// 打印结果 : 使用 + 拼接字符串 : str_1 : 单引号定义字符串 , str_2 : 双引号定义字符串
print("使用 + 拼接字符串 : " + str_4);

  
 
  • 1
  • 2
  • 3
  • 4

3 . 使用 ${表达式} 方式 : ${表达式} , 可以将 表达式 内容拼接到字符串中 ;

String add = "1 + 2 = ${1 + 2}";

// 打印结果 : 使用 ${} 拼接字符串 : 1 + 2 = 3
print("使用 \${} 拼接字符串 : " + add);

  
 
  • 1
  • 2
  • 3
  • 4


III . 字符串 API 调用



1 . String 字符串 API 文档 : https://api.dart.dev/stable/2.7.1/dart-core/String-class.html


2 . 字符串截取 : 需要指定开始位置(包含) 和结束位置(不包含) , 从 0 开始计数 ; 如果只有开始位置 , 那么就会直接截取到最后 ;

String str_substring = str_1.substring(3, 6);
//打印结果 : 字符串截取 : 定义字
print("字符串截取 : " + str_substring);

  
 
  • 1
  • 2
  • 3

3 . 获取字符串索引 :

//  参数中传入子字符串 , 或者正则表达式
int index = str_1.indexOf("定");
//打印结果 : index : 3
print("index : $index");

  
 
  • 1
  • 2
  • 3
  • 4


IV . 字符串 Demo 示例



1 . 代码示例 :

import 'package:flutter/material.dart';

class DartType_String extends StatefulWidget {
  @override
  _DartType_StringState createState() => _DartType_StringState();
}

class _DartType_StringState extends State<DartType_String> {
  @override
  Widget build(BuildContext context) {

    stringDemo();

    return Container(child: Text('字符串类型'));
  }

  //字符串类型 示例
  stringDemo(){

    // I . 字符串定义

    //字符串定义 : 既可以使用单引号 , 也可以使用双引号
    String str_1 = '单引号定义字符串';
    String str_2 = "双引号定义字符串";

    // II . 字符串拼接

    // 1 . 字符串拼接 1 : $ 字符串拼接 : 在单引号或双引号字符串中 , 使用 $变量名称 的方式 ,
    //      可以将变量名称代表的内容拼接到字符串中
    String str_3 = "str_1 : $str_1 str_2 : $str_2";

    //使用 $ 拼接字符串 : str_1 : 单引号定义字符串 str_2 : 双引号定义字符串
    print("使用 \$ 拼接字符串 : " + str_3);


    // 2 . 字符串拼接 2 : 使用 "+" 运算符 , 可以拼接字符串 , 该种方式与 Java 类似
    String str_4 = "str_1 : " + str_1 + " , str_2 : " + str_2;

    // 打印结果 : 使用 + 拼接字符串 : str_1 : 单引号定义字符串 , str_2 : 双引号定义字符串
    print("使用 + 拼接字符串 : " + str_4);

    // 3 . 字符串拼接 3 : 使用 ${表达式} , 可以将表达式内容拼接到字符串中
    String add = "1 + 2 = ${1 + 2}";

    // 打印结果 : 使用 ${} 拼接字符串 : 1 + 2 = 3
    print("使用 \${} 拼接字符串 : " + add);


    // III . 常用的字符串 API

    // 1 . 字符串截取
    //  需要指定开始位置(包含) 和结束位置(不包含) , 从 0 开始计数
    //  如果只有开始位置 , 那么就会直接截取到最后
    String str_substring = str_1.substring(3, 6);

    //打印结果 : 字符串截取 : 定义字
    print("字符串截取 : " + str_substring);


    // 2 . 获取字符串索引
    //  参数中传入子字符串 , 或者正则表达式
    int index = str_1.indexOf("定");

    //打印结果 : index : 3
    print("index : $index");

  }

}


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70

2 . 执行结果 :

使用 $ 拼接字符串 : str_1 : 单引号定义字符串 str_2 : 双引号定义字符串
使用 + 拼接字符串 : str_1 : 单引号定义字符串 , str_2 : 双引号定义字符串
使用 ${} 拼接字符串 : 1 + 2 = 3
字符串截取 : 定义字
index : 3

  
 
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/104929620

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。