In Java, the output of s is 0. I do not understand why and would it be possible to somehow get the correct value of s (1000 here)?
public static void main(String args) {
    int s = 0;
    List<Integer> list = getList(s);
    System.out.println("s = " + s);
}
public static List<Integer> getList(int s) {
    List<Integer> list = new ArrayList<Integer>();
    for (int i = 0; i < 1000; i++) {
        list.add(i); s++;
    }
}
In C# there were out descriptors to indicate that the variable is going to change if I'm not mistaken..
I'm not going to get the list.size() in general!
 
     
     
     
    