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

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

为了更好的理解举个例子  有时候在写工具类的时候可能考虑到这个方法有时候可能输出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个同时有按压效果

猜你喜欢

转载自blog.csdn.net/qq_33210042/article/details/107647753
今日推荐