본문 바로가기

이론/JAVA4

주소록 만들기 - 자바 스터디 3회차 과제 이번 과제는 파일 입출력을 이용해 주소록을 만들어 보는 것이다. 원래대로라면 FileBufferedReader, BufferedWriter 등을 이용해서 할 생각이었는데, 일단은 Scanner와 PrintWriter만을 이용해서 해보려고 했다. 중간중간 데이터가 깨지고 Scanner가 예상한대로 작동하지 않는 등 몇가지 문제가 있었는데 어찌어찌 동작은 하게됐다. 더러운 부분들은 추후에 수정할 예정. 이번 과제를 하면서 알게된 점이 있는데, Scanner sc = new Scanner(System.in) 과 같은 선언은 한 번만 해야 한다는 것. 하나의 프로세스에는 하나의 IO만 연결된다고 한다. System.in은 시스템으로부터 IO권한을 가져오는 것인데, 시스템은 프로세스한테 하나의 IO만 걸어줄 수 .. 2017. 11. 17.
웹 페이지 파싱 (Jsoup 이용) Jsoup 라이브러리를 사용하여 KBO 공식 사이트에서 팀 순위를 파싱하여 콘솔에 출력하는 코드. 처음 해보는 파싱이라 이것저것 해보는데 신기하다. 아직 데이터 다루기가 어설프고 마음대로 안되는데 갖고 놀다보면 금방 적응될듯. 나중에 안드로이드 어플리케이션에도 적용해 볼 예정. 코드는 계속 수정 중... Jsoup 라이브러리 다운로드 :: https://jsoup.org/download 1차 수정 (17-11-06) :: 처음으로 받아 온 데이터 tex를 두 개의 스트링 버퍼 rank(순위표), winlose(승패표) 로 분리 후 각각 출력. - Main.java12345678910111213141516171819202122232425262728293031323334353637383940414243444.. 2017. 11. 6.
로또 생성기 - 자바 스터디 2회차 과제 1회차 과제보다 어려워서 삽질을 좀 많이 한 것 같다. 문제에서는 contains를 이용해 비교하는 것을 의도한것 같지만 안되길래 어레이가 가지고 있는 값들을 일일히 비교시켰다. 어차피 시간 복잡도는 같을테니까 상관 없겠지...? 만들때 생각해야 하는건 자동으로 뽑은 로또 번호들이 sort 되어서 나온다는 점, ArrayList 안에 ArrayList 를 넣어서 ArrayList 같은 이상한 걸 만들어서 쓴다는 점 정도 있는듯. 코드 리뷰 후 수정 : 수입률 자료형 수정(int → long), ArrayList형을 ArrayList형으로 선언, 중구난방했던 static 변수 수정, 캡슐화, Scanner 하나로 재사용, 필요 없던 메서드 삭제 ● 프로젝트 폴더 구성 ● LottoMain.java12345.. 2017. 10. 13.
직접 입력하는 계산기 만들기 - 자바 스터디 1회차 과제 * 프로젝트 폴더 구성 * Main.java 코드1234567891011121314package javajoa;import java.util.Scanner;public class Main { public static void main (String args[]) { String number; System.out.print("숫자와 구분자를 입력하여 주세요 : "); Scanner sc = new Scanner(System.in); number = sc.nextLine(); System.out.println(CheckNumber.checked(number)); }}Colored by Color Scriptercs * CheckNumber.java 코드1234567891011121314151617181920.. 2017. 9. 30.