在Java应用程序中工作时,最近我需要组合一个用逗号分隔的值列表,以传递给另一个Web服务,而无需事先知道会有多少个元素。我能想到的最好的办法是这样的:

public String appendWithDelimiter( String original, String addition, String delimiter ) {

if ( original.equals( "" ) ) {

return addition;

} else {

return original + delimiter + addition;

}

}

String parameterString = "";

if ( condition ) parameterString = appendWithDelimiter( parameterString, "elementName", "," );

if ( anotherCondition ) parameterString = appendWithDelimiter( parameterString, "anotherElementName", "," );

我意识到这并不是特别有效,因为到处都是在创建字符串,但是我要澄清的不仅仅是优化。

在Ruby中,我可以改为执行以下操作,这感觉要优雅得多:

parameterArray = [];

parameterArray << "elementName" if condition;

parameterArray << "anotherElementName" if anotherCondition;

parameterString = parameterArray.join(",");

但是由于Java缺少join命令,所以我找不到任何等效的东西。

那么,用Java做到这一点的最佳方法是什么?

java分隔符 字符串_用Java构建带分隔符的字符串的最佳方法是什么?相关推荐

  1. cstring判断包含字符串_作为java程序员要知道的大厂常见的算法面试题:字符串的包含...

    1.2 字符串的包含 题目描述 给定一长字符串a和一短字符串b.请问,如何最快地判断出短字符串b中的所有字符是否都在长字符串a中?请编写函数bool StringContain(string & ...

  2. java找重复字符串_在java中怎样查找重复字符串

    在一段java编程代码中,字符串是不可缺少的一个要素,属于java中的基础知识,字符串不仅在java面试题中会出现,在编写代码时更要掌握怎样使用字符串.在前面我们也学习过关于字符串截取的知识,你应该有 ...

  3. java以逗号截取字符串_使用java流获取逗号分隔的字符串

    我使用 java Stream有以下代码. 我正在尝试获取函数来构建一个值的字符串:"a,b"在这种情况下. 但是,输出(在这种情况下,separateByComma)始终为&qu ...

  4. java list 去空字符串_【JAVA基础】list和字符串判空

    前言: 我们在项目中经常需要对获取的list集合或String类型变量判空,看前辈的代码,不同的人判空的方法不一样,那么,Java代码中,对list集合和String类型变量到底该如何判空呢? 一.J ...

  5. android string拼接字符串_「JAVA」细述合理创建字符串,分析字符串的底层存储,你不该错过...

    Java基础之字符串操作--String 字符串 什么是字符串?如果直接按照字面意思来理解就是多个字符连接起来组合成的字符序列.为了更好的理解以上的理论,我们先来解释下字符序列,字符序列:把多个字符按 ...

  6. java 新闻编辑_使用 Java 构建你自己的文本编辑器|Linux 中国

    导读:有时候,除你自己外,没有人能制作你所梦想的工具.以下是如何开始构建你自己的文本编辑器. 本文字数:9393,阅读时长大约:12分钟 https://linux.cn/article-13038- ...

  7. java 月份缩写_关于java:如何将日期字符串解析为Date?

    本问题已经有最佳答案,请猛点这里访问. 如何将下面的日期字符串解析为Date对象? String target ="Thu Sep 28 20:29:30 JST 2000"; D ...

  8. java输入一个字符串_在java中如何用键盘输入一个数,字符,字符串

    一,利用 Scanner 实现从键盘读入integer或float 型数据 1 import java.util.*;2 public classtest {3 public static voidm ...

  9. java输入数字_在java中,如何从键盘中输入数字,字符,字符串

    java不像C中拥有scanf这样功能强大的函数,大多是通过定义输入输出流对象. 常用的类有BufferedReader,Scanner. 实例程序: 一,利用 Scanner 实现从键盘读入inte ...

最新文章

  1. 操作系统的进程调度简析
  2. jsp mysql数据修改不了了_通过JSP界面无法修改mysql中的数据
  3. Ubuntu 18.04换国内源
  4. php写抢票脚本,火车票抢票python代码公开揭秘!
  5. python遍历获取一个类的所有子类
  6. php数组删除key和值,php删除数组指定key的元素
  7. 02 button的练习
  8. linux创建磁盘pv报错,Linux 磁盘管理
  9. Android 源代码中的res
  10. 被扎克伯格销毁的笔记本,暗藏 Facebook 所有成败
  11. JavaScript设计模式第一弹-创建型设计模式
  12. (day 21 - 辅助栈加模拟)剑指 Offer 31. 栈的压入、弹出序列
  13. 适配器模式之备忘录模式
  14. JSONP - 从理论到实践
  15. Thinkphp6.0博客源码分享【Wofl-blog】
  16. 百度搜索跳过验证码_百度搜索是死是活?网友吵翻了天,你觉得呢
  17. 在AWS上的架构部署与设计
  18. oracle收集snop,SNAP收集服务器信息
  19. 今日新出 CV 论文汇总(含医学图像、目标检测、唇语识别、SLAM等)
  20. 点,破折号和花花公子表现得很差

热门文章

  1. vs中四点画矩形的算法_中考热点,初高中衔接之倒角利器四点共圆
  2. 计算机的屏幕约是16平方分米吗,小明的卧室有16平方分米对不对
  3. python 趣味编程课_青少年编程:Python趣味编程基础入门课程
  4. 【SpringBoot 2】(九)异常处理 web原生组件的注入
  5. MIP 官方发布 v1稳定版本
  6. ansible的参数及常用模块
  7. LOFTERD18B542F16FF685FD684F427B4…
  8. 分布式系统的唯一ID
  9. ISP QoS Lab
  10. RAC 之 RMAN 备份