zoukankan      html  css  js  c++  java
  • 这种写法用过没:string.Format("{0,-10}", 8)

    1
    2
    3
    4
    var s1 = string.Format("{0,-10}", 8);
    var s2 = string.Format("{0,10}", 8);
    var s3 = string.Format("{0,20:yyyy-MM-dd}", DateTime.Today);
    var s4 = string.Format("4G 内存便宜了{0,12:C2},我打算买{1,4}条", 145, 2);

    大括号中,索引后 分号前,有一个逗号和一个整数(减号表示负数)。

    string.Format("{0,-10}", 8) 等同于 string.Format("{0}", 8).PadRight(10)

    string.Format("{0,10}", 8) 等同于 string.Format("{0}", 8).PadLeft(10)。

    String.Format 方法 format 参数由零或多个文本序列与零或多个索引占位符混合组成,其中索引占位符称为格式项,对应于与此方法的参数列表中的对象。 格式设置过程将每个格式项替换为相应对象值的字符串表示形式。

    格式项的语法如下:

    {index[,length][:formatString]}

    优点:

    ,length 其实把 String.PadLeft 和 String.PadRight 的功能融合在的 String.Format 方法中,简化了代码的编写。

    如果没有这种格式,代码写起来麻烦多了:

    1
    2
    3
    var s5 = string.Format("4G 内存便宜了{0},我打算买{1}条",
        145.ToString("C2").PadLeft(12),
        2.ToString().PadLeft(4));

    缺点:

    看起来不直观,复杂,如文首代码中的 “我打算买{1,4}条”。

    实际使用少,没用过的看了很纳闷。

    -------------------

    转载:http://www.cnblogs.com/ldp615/archive/2011/08/03/string-format-with-length.html

  • 相关阅读:
    去除vue-router 链接上的#号
    input 实现调用本地摄像头 实现拍照 和拍视频
    vue-cli 安装sass 和 font-awesome 笔记
    linux下alias命令详解
    linux下source命令的基本功能
    在Linux命令行窗口中,怎么向上翻页?
    Android内存监测工具使用
    Activity的Theme主题风格
    ListView中CheckBox错乱解决
    绘图之Canvas学习
  • 原文地址:https://www.cnblogs.com/BoYu045535/p/3683342.html
Copyright © 2011-2022 走看看