1\public class Test2{
public static void main(String[] args){
Count mycount= new Count();
int times=0;
for (int i=0;i<100;i++){
increment(mycount,times);
}
System.out.println("count is "+mycount.count);
System.out.println("times is "+times);
}
public static void increment(Count c ,int times ){
c.count++;
times++;
}
public static class Count{
public int count;
Count(int c){
count=c;
}
Count(){
count=1;
}
}
}
2\
public class Test2{
public static void main(String[] args){
Count mycount= new Count();
int times=0;
for (int i=0;i<100;i++){
increment(mycount);
times++;
}
System.out.println("count is "+mycount.count);
System.out.println("times is "+times);
}
public static void increment(Count c ){
c.count++;
}
public static class Count{
public int count;
Count(int c){
count=c;
}
Count(){
count=1;
}
}
}
public static void main(String[] args){
Count mycount= new Count();
int times=0;
for (int i=0;i<100;i++){
increment(mycount,times);
}
System.out.println("count is "+mycount.count);
System.out.println("times is "+times);
}
public static void increment(Count c ,int times ){
c.count++;
times++;
}
public static class Count{
public int count;
Count(int c){
count=c;
}
Count(){
count=1;
}
}
}
2\
public class Test2{
public static void main(String[] args){
Count mycount= new Count();
int times=0;
for (int i=0;i<100;i++){
increment(mycount);
times++;
}
System.out.println("count is "+mycount.count);
System.out.println("times is "+times);
}
public static void increment(Count c ){
c.count++;
}
public static class Count{
public int count;
Count(int c){
count=c;
}
Count(){
count=1;
}
}
}
c.count++;
times++;
}
看看上面这个是你第一个程序。你这里虽然把times++了。但是你并没有返回。。所以导致最后你加来加去times还是初始的值啊
c.count++;
times++;
}
结束以后,imcrement 里的times 生命周期也就结束了, main中的times还是0...