java变参

原创 2015年11月19日 11:38:25

public static String formatQualifiedName(String... params) {
    List<String> nonEmptyParams = new ArrayList<>(params.length);
    for (String p : params) {
        if (!StringUtils.isNullOrEmpty(p)) {
            nonEmptyParams.add(p);
        }
    }
    StringBuilder formatString = new StringBuilder();
    for (int i = 0; i < nonEmptyParams.size(); i++) {
        formatString.append("%s").append(".");
    }
    //消除最后多余的"."
    if (formatString.charAt(formatString.length() - 1) == '.') {
        formatString.deleteCharAt(formatString.length() - 1);
    }
    return String.format(formatString.toString(), nonEmptyParams.toArray(new String[0]));
}

formatQualifiedName("china", "zhejiang", ''hangzhou")----> "china.zhejiang.hangzhou",从使用情况来看,就是将params当成一个数组来操作。

这个函数个人认为没必要用formatString,直接遍历params,然后append就行了。


相关文章推荐

java传递个数可变的实参

原文:http://blog.csdn.net/avius/article/details/65970 孙海涛 (sun.haitao@126.com) 2004年8月5日最初发表,2...

java,String做参数实参值不变,equals与==浅析

public class Test { public static void test(String str) { str = "World"; }///函数结束时这个str自动消失,原来的...

Java---形参个数可变的方法

1>从JDK 1.5以后,Java允许定义形参个数可变的参数,从而允许为方法指定数量不确定的形参。 定义形参个数可变的方法: 2>定义参数个数可变的方法:在方法最后一个形参的类型后面增加三个点(....

Java变参、C/C++/Objective_C变参

/* java中变参方法,变参即参数列表不固定,但是参数类型是一样的,在使用时,形参变量是数组类型的引用 */ public class AppEnter{ public static voi...

JDK的安装和Java环境变量的设置

  • 2015年11月03日 10:27
  • 359KB
  • 下载

Java程序性能优化 读书笔记(十三)并行设计模式:不变模式

转载:《Java高并发程序设计》学习 --5.2 并行模式之不变模式 一、不变模式 在并行软件的开发过程中,同步操作似乎是不可避免的,当多线程对同一个对象进行读写操作时,为了保证数据一致性和正确性,有...

JDK1.7安装和JAVA环境变量的设置

  • 2015年04月13日 17:39
  • 67KB
  • 下载

Java变量的初始化问题探究

对于java的变量,我们知道有成员变量和局部变量。 关于他们的初始化,基本上所有书上都会写。成员变量,java会帮助你初始化,局部变量,则需要程序员自己初始化。 对于类的成员变量。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java变参
举报原因:
原因补充:

(最多只允许输入30个字)