zoukankan      html  css  js  c++  java
  • JAVA笔记4__static关键字/对象数组/foreach/方法的可变参数

    /**
     * static关键字:修饰属性(实质就是全局变量)、方法(无需本类的对象即可调用此方法)、类。
     * 1.static方法只能调用static方法
     * 2.static方法只能访问static数据
     * 3.static方法不能以任何方式引用this或super
     */
    public class Main {
        public static void main(String[] args) {
            A a = new A();  a.val = 2;
            A a1 = new A(); a1.val = 3;
            System.out.println(a.val+" "+a1.val);
            B b = new B();  b.val = 2;
            B b1 = new B(); b1.val = 3;
            System.out.println(b.val+" "+b1.val); //b和b1拥有同一份val
            A.say();
        }
    }
    
    class A{
        int val = 1;
        public static void say(){
            System.out.println("Hello~~");
        }
    }
    class B{
        static int val = 1; //静态数据不属于对象,属于类
    }
    import java.lang.String;
    import java.util.Arrays;
    import java.util.Scanner;
    
    /**
     * 对象数组
     */
    public class Main {
        public static void main(String[] args) {
            MonkeyManager  mm = new MonkeyManager();
            mm.add(new Monkey("1"));
            mm.add(new Monkey("2"));
            mm.add(new Monkey("2"));
            mm.add(new Monkey("4"));
            mm.delete("2");
            mm.list();
            
            Monkey temp1 = new Monkey("1");
            mm.update(temp1);
            mm.list();
        }
    }
    
    class MonkeyManager{
        private Monkey[] ms = new Monkey[3];
        private int count = 0;
        public void add(Monkey m){
            if(count<ms.length){
                ms[count++] = m;
                System.out.println("Successful add monkey: "+m.name);
            }
            else{
                System.out.print("空间已满!进行扩充...."); 
                int newLen = (ms.length*3)/2+1;
                ms = Arrays.copyOf(ms, newLen);
                System.out.println("扩充后的长度为:"+newLen);
                ms[count++] = m;
                System.out.println("Successful add monkey: "+m.name);
            }
        }
        public void list(){
            for(int i=0;i<count;++i) ms[i].say();
        }
        public void delete(String name){
            boolean flag = true;
            while(flag){
                flag = false;
                for(int i=0;i<count;++i) if(ms[i].name.equals(name)){
                    for(int j=i;j<count-1;++j) ms[j]=ms[j+1];
                    ms[count-1] = null;
                    --count;
                    System.out.println("Successful delete monkey: "+name);
                    flag = true;
                    break;
                }
            }
        }
        public Monkey find(String name){
            for(int i=0;i<count;++i) if(ms[i].name.equals(name)) return ms[i];
            return null;
        }
        public void update(Monkey m){
            Monkey s = find(m.name);
            if(s!=null){
                s.name = "helloWorld";
            }
        }
    }
    class Monkey{
        String name;
        public Monkey(String name){
            this.name = name;
        }
        public void say(){
            System.out.println("I'm "+name);
        }
    }
    public class Main {
        public static void main(String[] args) {
            /**
             * foreach语法
             * for(类型 变量名:数组或集合){ //输出操作 }
             */
            String[] names = {"1","2","3","4"};
            for(String i:names) System.out.println(i);
            
            
            /**
            * 方法的可变参数
            * 1.只能有一个
            * 2.有多个参数时,可变参数放在最后
            */
            method1(names);
            method2(123,"a1","a2","a3");
            method2(123,names);
        }
        public static void method1(String[] na){
            for(String i:na) System.out.println(i);
        }
        public static void method2(int x,String... na){ //参数为可变参数(只能有一个)
            System.out.println("x="+x);
            for(String i:na) System.out.println(i);
        }
    }
  • 相关阅读:
    [leetcode]Combination SumII
    NSum小结
    image 与 canvas 的相互转化
    $_SERVER 相关变量
    最近做的项目,总结一下。
    开始在博客园,写博客,先写点东西。
    Codeforces Round #584 C. Paint the Digits
    Codeforces Round #584 B. Koala and Lights
    Codeforces Round #584 A. Paint the Numbers
    HDU-2296-Ring(AC自动机, DP)
  • 原文地址:https://www.cnblogs.com/fish7/p/4137892.html
Copyright © 2011-2022 走看看