1. 程式人生 > >在迴圈體內宣告物件和迴圈體外宣告物件 再新增到一個list的 區別

在迴圈體內宣告物件和迴圈體外宣告物件 再新增到一個list的 區別

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import java.util.List;

public class model{
    public static void main(String[] args) {
        
        //在迴圈體內宣告物件和迴圈體外宣告物件 再新增到一個list的 區別
        // testList1();
        /**
         * a--2 a--2 a--2
         * 
         */
        // testList2();
        /**
         * a--0 a--1 a--2
         * 
         */
        // testList1();
    }

    public static List outInnerParams(List list){
        for (Object var : list) {
            System.out.println(var.toString());
        }

        if (list instanceof Serializable) {
            System.out.println("說明實現的序列化 yes");
        } else {
            System.out.println("未實現序列化    no");
        }
        return list;
    }

    public static void testList1() {
        List<User> Users = new ArrayList<>();
        User user = new User();
        user.name = "a";
        for(int i=0;i<3;i++){
            user.age=i;
            Users.add(user);

            sout(user);
        }
        //測試
        for (User u: Users) {
            System.out.println(u.name.concat("--").concat(u.age.toString()));
        }
    }

    public static void testList2() {
        List<User> Users = new ArrayList<>();
        for (int i = 0; i < 3; i++) {

            User user = new User();
            user.name = "a";

            user.age = i;
            Users.add(user);
        }
        // 測試
        for (User u : Users) {
            System.out.println(u.name.concat("--").concat(u.age.toString()));
        }
    }

    public static void sout (User user) {
      System.out.println(user.age);
    }
}

class User{
    public String name;
    public Integer age;
}