当前位置: 首页 > news >正文

钓鱼网站在线制作下载百度导航最新版本

钓鱼网站在线制作,下载百度导航最新版本,哪些网站做翻译可以赚钱,网站开发那个语言好文章目录 1 why2 what3 how4 练习手段 1 why StringBuilder拼接包含分隔符的字符序列时,分隔符需要一个一个添加,或者需要手动删除末尾冗余的分隔符,代码不美观,不好看。 比如,单个字符串依次拼接时: Stri…

文章目录

    • 1 why
    • 2 what
    • 3 how
    • 4 练习手段

1 why

  StringBuilder拼接包含分隔符的字符序列时,分隔符需要一个一个添加,或者需要手动删除末尾冗余的分隔符,代码不美观,不好看。

  比如,单个字符串依次拼接时:

StringBuilder sb = new StringBuilder();
sb.append("apple");
sb.append(",");
sb.append("orange");
sb.append(",");
sb.append("milk");
String str = sb.toString();

  以及字符串集合循环拼接时:

StringBuilder sb = new StringBuilder();
for (String s:foodList) {sb.append(s);sb.append(",");
}
sb.deleteCharAt(sb.length()-1);
String str = sb.toString();

  StringJoiner很好的解决了这个问题。

2 what

  StringJoiner:用于构造由分隔符分隔的字符序列,并且可选前缀、后缀。内部实际是基于StringBuilder实现。

  由于本文只使用StringJoiner替换StringBuilder,生成带分隔符的字符序列,所以与之无关的功能不介绍,详情可以参见jdk1.8官网手册。

StringJoiner功能
  如图,需要用到的有StringJoiner本身提供的StringJoiner构造方法、add方法、toString方法,以及String类中通过StringJoiner实现的join方法。

  (1)StringJoiner构造方法

public StringJoiner(CharSequence delimiter) {this(delimiter, "", "");
}

  创建对象时,可以指定分隔符。

  (2)add方法

public StringJoiner add(CharSequence newElement) {prepareBuilder().append(newElement);return this;
}

  外层使用的prepareBuilder()方法,及StringBuilder的append方法,继续查看prepareBuilder方法:

private StringBuilder prepareBuilder() {if (value != null) {value.append(delimiter);} else {value = new StringBuilder().append(prefix);}return value;
}

  也是用的StringBuilder的append方法,区别是增加了prefix(前缀,用于在输出的字符序列最前面添加用户自定义的字符,比如[)。

  (3)toString方法

@Override
public String toString() {if (value == null) {return emptyValue;} else {if (suffix.equals("")) {return value.toString();} else {int initialLength = value.length();String result = value.append(suffix).toString();// reset value to pre-append initialLengthvalue.setLength(initialLength);return result;}}
}

(4)String类的join方法

public static String join(CharSequence delimiter, CharSequence... elements) {Objects.requireNonNull(delimiter);Objects.requireNonNull(elements);// Number of elements not likely worth Arrays.stream overhead.StringJoiner joiner = new StringJoiner(delimiter);for (CharSequence cs: elements) {joiner.add(cs);}return joiner.toString();
}

  可以看到实际是调用StringJoiner实现的。

  此处,实现了suffix(分隔符)的填充操作。

  至此介绍完毕相关功能,后面进行尝试。

3 how

  (1)单个字符串依次拼接时:

  简单字符,可直接使用String类的join方法。

String result = String.join(",", "aaa", "bbb" ,"ccc");

  第一个入参是分隔符,后面依次添加要追加的字符串。

  字符串内容复杂时,使用StringJoiner。

StringJoiner sj = new StringJoiner(",");
sj.add("apple");
sj.add("orange");
sj.add("milk");
String str = sj.toString();

  (2)字符串集合循环拼接时:

List<String> foodList = new ArrayList<String>();
foodList.add("apple");
foodList.add("orange");
foodList.add("milk");StringJoiner sj = new StringJoiner(",");
for (String s:foodList) {sj.add(s);
}
String str = sj.toString();

  和一开始StringBuilder的方式比较下,是不是简洁许多?

4 练习手段

  可以参照“3 how”章节,尝试在自己的项目中,替换原本使用StringBuilder生成包含分隔符的字符序列功能。

http://www.hkea.cn/news/530997/

相关文章:

  • 东莞网络科技公司有哪些山东网站seo
  • 网站建设需要学什么网站模板购买
  • 用html做的游戏网站关键词推广效果分析
  • 做影视网站引流正规推广平台有哪些
  • 免费下载简历模板北京seo排名厂家
  • 西昌市做网站的百度搜索排名靠前
  • 办公室装修实景拍摄图重庆seo俱乐部联系方式
  • 网站建设阶段推广计划书怎么写
  • 代做毕业设计网站现成注册网站平台
  • 电商网站开发工作计划企业网络营销策划
  • 用wps网站栏目做树形结构图网页设计代码案例
  • 多媒体网站设计开发是指什么每日关键词搜索排行
  • 网站 seo正规网络公司关键词排名优化
  • 建立网站赚多少钱seo收录排名
  • 怎么做app网站seo学习网站
  • 广西建设职业技术学院官网免费的seo优化
  • 凡科网电脑版怎么做网站百度知道官网手机版
  • 贵卅省住房和城乡建设厅网站周口seo推广
  • 搭建flv视频网站seo工具查询
  • 企业展示网站 数据库设计模板自助建站
  • 房地产设计师上海seo网络优化
  • wordpress迁移打不开百度seo泛解析代发排名
  • 网站兼容性测试怎么做微信营销软件群发
  • wordpress如何设置内容页seo营销优化
  • 高端大气的网站制作南宁百度seo软件
  • 沙井营销型网站建设成人培训机构
  • 网站没有被百度收录搜索引擎排名优化公司
  • 手机网站转换小程序晋江怎么交换友情链接
  • 专业做网站的公司疫情放开最新消息今天
  • 不用写代码做网站软件长沙优化网站