欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java 参数后面跟三个... 的作用

程序员文章站 2022-03-23 14:59:15
...

三个点  是 表示改参数是可变长参数

为了更好的理解举个例子  有时候在写工具类的时候可能考虑到这个方法有时候可能输出1或者2个或者3个等等不同的数,这个时候

不确定的时候 使用... 非常的方便

public class test {
        public static void main(String[] args) {

                 myTest("A");
              // myTest("A", "B");
             //  myTest("A", "B", "C");
           // 就是可以输入多个数          
        }
 
        public static void myTest(String... strings) {
            for (int i = 0; i < strings.length; i++) {
                System.out.print(strings[i]);
            }
            
        }
    }

在android 里面 有时候我们经常需要传入多个不同的id 的时候

就会经常 看到 方法里面有   View... views  这种写法  ,

举个例子   一个按压效果 的工具类  

public class PressUtils {
    public static void setPressChange(Context context, View... views) {
        for (View view : views) {
            view.setOnTouchListener(new View.OnTouchListener() {
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    switch (event.getAction()) {
                        case MotionEvent.ACTION_DOWN:
                            v.setAlpha(0.4f);
                            break;
                        case MotionEvent.ACTION_UP:
                        case MotionEvent.ACTION_CANCEL:
                        case MotionEvent.ACTION_OUTSIDE:
                            v.setAlpha(1.0f);
                            break;
                    }
                    return false;
                }
            });
        }
    }
}

使用的时候

PressUtils.setPressChange(this, view); 一个view 按压效果
PressUtils.setPressChange(this,view,view1);  点击一个view 2个同时有按压效果