java基础---->java中变参函数的使用
Java的变参函数实现实际上参数是一个数组,今天我们就简单的学习一下它的用法。
java中的变参函数
一、它的使用方法如下:
public class VariableParam {
private static void variableParam1(Object... args) {
for (Object v : args) {
System.out.print(v.toString() + " ");
}
System.out.println(args.length); // 可以看到args和数组一样有length属性
}
@Test
public void param_1() {
// 如果是List<String>
List<String> lists1 = new ArrayList<>();
lists1.add("huhx");
lists1.add("linux");
variableParam1(lists1); // [huhx, linux] 1
// 如果是List<Object>
List<Object> lists2 = new ArrayList<>();
lists2.add("huhx");
lists2.add("linux");
variableParam1(lists2); // [huhx, linux] 1
// 如果是数组
String[] arrays1 = new String[]{"huhx", "linux"}; // huhx linux 2
variableParam1(arrays1);
// 如果是数组
Object[] arrays2 = new Object[]{"huhx", "linux"};
variableParam1(arrays1); // huhx linux 2
// 如果是参数
variableParam1("huhx", "linux"); // huhx linux 2
}
}
二、一个简单的使用案例
MessageFormat的format方法的第二个参数就是一个变参。它的方法定义:
public static String format(String pattern, Object ... arguments) {
MessageFormat temp = new MessageFormat(pattern);
return temp.format(arguments);
}
以下是一个使用的案例。
public String baseReplaceFromArray(String string, List<String> list) {
return MessageFormat.format(string, transListInfoArrays(list));
}
public static String[] transListInfoArrays(List<String> list) {
String[] arrays = new String[list.size()];
list.toArray(arrays);
return arrays;
}
@Test
public void baseReplaceFromArray_test() {
List<String> list = new ArrayList<>();
list.add("huhx");
list.add("L。");
System.out.println(baseReplaceFromArray("{0} love {1}", list)); // huhx love L。
}
友情链接
java基础---->java中变参函数的使用的更多相关文章
- java基础---->java中正则表达式二
跟正则表达式相关的类有:Pattern.Matcher和String.今天我们就开始Java中正则表达式的学习. Pattern和Matcher的理解 一.正则表达式的使用方法 一般推荐使用的方式如下 ...
- Java基础学习中一些词语和语句的使用
在Java基础学习中,我们刚接触Java会遇到一些词和语句的使用不清的情况,不能很清楚的理解它的运行效果会是怎么样的,如:break,continue在程序中运行效果及跳转位置, 1.先来看看brea ...
- Java基础-Java中的堆内存和离堆内存机制
Java基础-Java中的堆内存和离堆内存机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.
- Java基础-Java中的内存分配与回收机制
Java基础-Java中的内存分配与回收机制 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. 二.
- Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)
Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在学习Java的之前,你可能已经听说过读 ...
- Java基础-Java中的并法库之线程池技术
Java基础-Java中的并法库之线程池技术 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是线程池技术 二.
- Java基础-Java中23种设计模式之常用的设计模式
Java基础-Java中23种设计模式之常用的设计模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.设计模式分类 设计模式是针对特定场景给出的专家级的解决方案.总的来说设 ...
- Java基础-JAVA中常见的数据结构介绍
Java基础-JAVA中常见的数据结构介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是数据结构 答:数据结构是指数据存储的组织方式.大致上分为线性表.栈(Stack) ...
- Java基础__Java中自定义集合类
Java基础__Java中集合类 传送门 自定义MyArrayList集合实现:增加数据.取数据.查看集合中数据个数方法 package com.Gary; public class MyArrayL ...
- Java基础(中)
面向对象基础 面向对象和面向过程的区别 两者的主要区别在于解决问题的方式不同: 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题. 面向对象会先抽象出对象,然后用对象执行方法的方式 ...
随机推荐
- map和object互相转换
/** * 使用org.apache.commons.beanutils进行转换 */ class A { public static Object mapToObject(Map<String ...
- iOS边练边学--通讯录练习之Segue使用,控制器的数据传递
一.什么是segue Storyboard上每一根用来界面跳转的线,都是一个UIStoryboardSegue对象(简称Segue) 二.Segue的属性 每一个segue对象,都有三个属性 < ...
- BaaS后端即服务 - 概念篇
摘要: 什么是BaaS? BaaS(Backend as a Service)是一种新型的云服务,旨在为移动和Web应用提供后端云服务,包括云端数据/文件存储.账户管理.消息推送.社交媒体整合等.Ba ...
- windows 批处理文件中引用日期
参见:http://blog.csdn.net/iw1210/article/details/39313677 %DATE%输出的是: yyyy/mm/dd 星期* (例如:2008/12/18 星期 ...
- linux -- 管道“|”
利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入.连续使用管道意味着第一个命令的输出会作为 第二个命令的输入,第二个命令的输出又会作为第三个命令的输入 ...
- 使用avahi 的mdns服务发现server
avahi-browse -a 可以查看局域网内所有的mdns服务, avahi-browse -r _xxxxx._tcp
- js unicode处理
//岗位详细界面 var str="1.\u000D\u21B52.\u000D\u21B53"; var pad = function() { var tbl = []; ret ...
- 使用scrapy_redis,实时增量更新东方头条网全站新闻
存储使用mysql,增量更新东方头条全站新闻的标题 新闻简介 发布时间 新闻的每一页的内容 以及新闻内的所有图片.东方头条网没有反爬虫,新闻除了首页,其余板块的都是请求一个js.抓包就可以看到. 项目 ...
- python--条件判断和循环--3
原创博文,转载请标明出处--周学伟http://www.cnblogs.com/zxouxuewei/ 一.if语句 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄, ...
- Android中使用UncaughtExceptionHandler来处理未捕获的异常
原文在sparkyuan.me上.转载注明出处:http://sparkyuan.github.io/2016/03/28/使用UncaughtExceptionHandler来处理未捕获的异常/ 全 ...