tenman2002   4년 전

check함수는 얼추 맞게쓴거같은데 ,,,

이해가안되는게(자바지식이 약합니다)

10 10
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB
BBBBBBBBBB

이 내용을 그대로 출력하면

bigchess판(입력받은것) 이 제일먼저 뜨고

그다음 fake판(bigchess복사본)이 그다음이 뜹니다

이때까지는 입력값을 그대로 배열에 넣는거니까 괜찮은데

55번째 줄 

bw.write(Integer.toString(check(bigchess,0,0))); 을 수행하면

check함수는 어차피 반환값이 int 라서 변화된 횟수를 출력하는것인데

이후의 bigchess판이란 fake 체스판 모양이 변화됩니다( (0,0) 기준으로 변화되버림)

심지어 똑같이요...

질문입니다..기본개념이 약하다는 전제를 깔겠읍니다.,.

1. 함수를 이용해 계산(count를 세기위한 check함수)을 했을 뿐인데 왜 main안에있는 bigchess판의 모양이 바뀌는가?return은 그저 int인데??

2.함수로 인해서 bigchess(check함수실행은 bigchess한테만 해보았으니)가 변했다고 하면, fake판은 왜 변하는가?? 건드리질않았고   fake=bigchess 는 심지어 44번 줄인데?

 3. static으로 메소드를 만들면 main에서 객체를 생성하지않고도 사용할수 있는것 아닌가? 

댓글을 작성하려면 로그인해야 합니다.