Java中方法内的可变参数怎么使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中方法内的可变参数怎么使用相关的知识,希望对你有一定的参考价值。

Java中方法内的包含可变参数的方法
创建一个工程,或者在已有工程中,创建一个包,写一个类,我命名为Parameters,大家随便。
核心就是这个方法, 把参数is理解成一个数组就是了:
private static void function(int... is)
  for (int i = 0; i < is.length; i++)
    System.out.print(is[i]+" ");
  

为了使这个方法更复杂一点点呢,我们可以填一点儿小功能。
比如,我想得到累加值,嘿嘿,很简单的。
方法之初申明一个int类型变量,赋初值为零。for中与数组中每一个值进行累加。如图
好了,写一个很简单的方法测试一下。
main()里面写
function(new int[] 1, 2, 3, 9, 7,);
最后,运行一下结果,很简单的吧?
参考技术A 三个点吗? 是个数组 用的时候直接放数组进去,用的时候直接用取数组的值的方式就可以了

[Java]_[初级]_[可变参数的使用技巧]

场景

  1. 在开发Java程序时,有些参数会是可变参数,比如String.format或者Java Web 框架jfinal里的Model方法find,就需要可变参数。问题来了,如果find参数sql字符串,或者format方法的format字符串是需要动态拼接的,那么它的可变参数值就是动态输入的,并不是固定值,怎么输入?

public static String format(String format, Object... args);
public  M findFirst(java.lang.String sql, java.lang.Object... paras);

说明

  1. Java的可变参数除了可以在编译时传入固定个数的参数之外,还可以传入数组作为动态值,这样就方便在运行时动态计算参数个数,这是重点。通过List<E>toArray方法,可以生成一个数组。注意,Java的整型数值可以自动装箱为Integer对象类型,这样就可以使用Object[]来封装不同类型的参数。
package com.example.string;

import java.util.ArrayList;
import java.util.List;

import org.junit.jupiter.api.Test;


public class VariableParameterTest 

    public void print(String str)
        System.out.println(str);
    
    
    @Test
    public void testVariableParameter()
        // variable parameter
        String str = "That Writing %s summary is %d task %s ";
        String result = String.format(str, "variable parameter",1,"today.");
        print(result);

        List<Object> params = new ArrayList<>();
        params.add("variable parameter");
        params.add(1);
        params.add("today");

        Object[] args = params.toArray();
        String result2 = String.format(str, args);
        print(result2);
    
    


输出

That Writing variable parameter summary is 1 task today. 
That Writing variable parameter summary is 1 task today 

参考

1.jfinal

以上是关于Java中方法内的可变参数怎么使用的主要内容,如果未能解决你的问题,请参考以下文章

如何通过java 反射 调用一个 含有 可变参数的 方法呢 ??

Java 可变参数基本使用

对Java中可变参数的理解

[Java]_[初级]_[可变参数的使用技巧]

java-可变参数

java-可变参数