Korean subtitles

← We Have Intercepted A Secret Message - Intro to Java Programming

Get Embed Code
6 Languages

Showing Revision 1 created 10/28/2014 by Robin Rheem.

  1. 우선, decode 메소드를 어떻게 사용할지 생각해 봅시다. 이 메소드는 해독된
  2. 메시지를 리턴 할겁니다. 그리고 매개변수는 필요 없습니다.
  3. decoder 테스터를 보면, docoder.decode의 결과를 출력해야 합니다.
  4. decoder 테스터는 암호화된 메시지를 이미 갖고 있습니다. 그래서 이 문자열을
  5. 다시 넘길 필요가 없습니다. 이제 docder로 다시 돌아와서, 우리는 0번째
  6. 문자로 시작해서 각각 10번째 문자만 저장하는 for문을 작성해야 합니다.
  7. 문자열을 확인해야 하니까 비밀 메시지의 길이만큼 for문이 반복되야
  8. 합니다. 우리가 읽을 문자열은 EncodedMessage 안에 있습니다. i를
  9. 1만큼 자동 증가를 하지 않고 10만큼 자동 증가하기로 하겠습니다. 그래야
  10. 10번째 문자를 읽어오기 때문입니다. 반복문 안으로 들어가서, 반복해야 할 부분은
  11. i가 i번째 글자를 읽어오고 decodedMessage에 저장하는 것입니다.
  12. 그래서 decodedMessage는 decodedMessage + encodedMessage.substring(i, i+1)이
  13. 됩니다. 이렇게 해야 한 문자열 안의 한 글자만 가져올 수 있다는 것을 기억하세요.
  14. 실행해보니 비밀 메시지가 더 있습니다. 뭔지 궁금하시면
  15. 다른 인덱스로부터 시작을 해야 알 수 있을 것 같습니다.
  16. 하지만 지금은 잠시 오류에 대해서 설명해 보도록 하겠습니다.
  17. 이와 같이 여기에 <나 <=를 이렇게 작성했다면,
  18. '문자열 범위 이탈'이라는 예외 처리가 뜰 겁니다.
  19. 너무 높은 인덱스를 enocdedMessage 안에서 가리키면, 문자열 범위 이탈
  20. 예외 처리가 일어나서 실행시간 오류가 됩니다. 실행시간 오류가 좋은 점은,
  21. 프로그램에 여러분에게 오류가 뭔지 알려주기 때문입니다.
  22. 아무것도 모른채 자신의 프로그램을 이상하게 바꾸는 것 보다 훨씬 더 좋은 것 같습니다.
  23. 하지만 이 문제를 enocdedMessage.length() -1을 넣으면서
  24. 해결을 할수도 있습니다. 실행은 잘 되지만, 제가 생각할 때는
  25. 깔끔해 보이지 않습니다. 문자열을 이용해서 반복할 때는, i를 길게 하고
  26. length를 짧게 하는 것이 좋습니다.