본문 바로가기

728x90
반응형

BackEnd

[java] 이것이 자바다 ch19 네트워크 입출력(UDP, 동시 요청 처리) 4. UDP ▷ 발신자가 일방적으로 수신자에게 데이터를 보내는 방식. TCP처럼 연결 요청 및 수락 과정이 없기 때문에 TCP보다 데이터 전송 속도가 상대적으로 빠릅니다. ▷ 데이터 전달의 신뢰성보다 속도가 중요하다면 UDP를 사용하고, 데이터 전달의 신뢰성이 중요하다면 TCP를 사용합니다. ▷ DatagramSocket은 발신점과 수신점에 해당하고 DatagramPacket은 주고받는 데이터에 해당합니다. ◎ UDP 서버 1. DatagramSocket 객체를 생성할 때에는 다음과 같이 바인딩할 Port 번호를 생성자 매개값으로 제공 DatagramSocket datagramSocket = new DatagramSocket(50001);​ 2. receiver() 메소드는 데이터를 수신할 때까지 블로킹.. 더보기
[java] 이것이 자바다 ch19 네트워크 입출력(IP, TCP) 1. 네트워크 기초 ◎ 네트워크 ▷ 네트워크 : 여러 컴퓨터들을 통신 회선으로 연결한 것 ▷ LAN(Local Area Network) : 가정, 회사, 건물, 특정 영역에 존재하는 컴퓨터를 연결한 것 ▷ WAN(Wild Area Network : LAN을 연결한 것(인터넷) 1. IP : PC의 네트워크 연결을 위한 고유 주소(식별할 수 있는 고유 번호, 중복 될 수 없습니다.) ▷ 사설 IP : 공유기에서 내부적으로 쓰이는 IP ▶ 192.168.X.X ▶ 172.16.X.X ▶ 10.X.X.X ▷ 공인 IP : 실질적인 통신을 위한 IP (인터넷 연결) ▷ PC : 사설 IP → 내부 통신 간에 사설 IP로 통신 외부(인터넷) 통신을 할 때는 사설 IP → 공인 IP 변환 시켜서 통신 2. SM(S.. 더보기
[java] 이것이 자바다 ch18 데이터 입출력 3 (Writer, Reader) 9. 프린트 스트림 ◎ PrintStream과 PrintWriter ▷ 프린터와 유사하게 출력하는 print(), println(), printf() 메소드를 가진 보조 스트림 ▷ PrintStream은 바이트 출력 스트림과 연결되고, PrintWriter는 문자 출력 스트림과 연결 PrintStream/PrintWriter void print(boolean b) void println(boolean b) void print(char c) void println(char c) void print(double d) void println(double d) void print(float f) void println(float f) void print(int i) void println(int i) void .. 더보기
[java] 이것이 자바다 ch18 데이터 입출력 2 (Writer, Reader) 5. 보조 스트림 ▷ 다른 스트림과 연결되어 여러 편리한 기능을 제공해주는 스트림. 자체적으로 입출력을 수행할 수 없기때문에 입출력 소스로부터 직접 생성된 입출력 스트림에 연결해서 사용합니다. ▷ 입출력 스트림에 보조 스트림을 연결하려면 보조 스트림을 생성할 때 생성자 매개값으로 입출력 스트림을 제공합니다. ▷ 보조스트림 변수 = new 보조스트림(입출력스트림); ▷ 보조 스트림은 또 다른 보조 스트림과 연결되어 스트림 체인으로 구성할 수 있습니다. NO 보조스트림 기능 1 InputStreamReader 바이트 스트림을 문자 스트림으로 변환 2 BufferedInputStream, BufferedOutputStream BufferedReader, BufferedWriter 입출력 성능향상 3 DataI.. 더보기
[java] 이것이 자바다 ch18 데이터 입출력 1 (Writer, Reader) 1. 입력 스트림과 출력 스트림 ▷ 프로그램을 기준으로 데이터가 들어오면 입력 스트림, 데이터가 나가면 출력 스트림 ▷ 프로그램이 다른 프로그램과 데이터를 교환하려면 양쪽 모두 입력 스트림과 출력 스트림이 필요 ▷ 바이트 스트림 : 그림, 멀티미디어, 문자 등 모든 종류의 데이터를 입출력할 때 사용 ▷ 문자 스트림 : 문자만 입출력할 때 사용 ▷ 자바는 데이터 입출력과 관련된 라이브러리를 java.io 패키지에서 제공 ◎ 스트림 입출력 NO 구분 바이트 스트림 문자 스트림 입력 스트림 출력 스트림 입력 스트림 출력스트림 1 최상위클래스 InputStream OutputStream Reader Writer 2 하위 클래스 (예) XXXInputStream (FileInputStream) XXXOutputS.. 더보기
[java] 이것이 자바다 ch17 스트림(reduce, 병렬) 11. 요소 커스텀 집계(스트림이 제공하는 메소드) ▷ 스트림은 기본 집계 메소드인 sum(), average(), count(), max(), min()을 제공하지만, 다양한 집계 결과물을 만들 수 있도록 reduce() 메소드도 제공 NO 인터페이스 리턴 타입 메소드(매개변수) 1 Stream Optional reduce(BinaryOperator accumulator) 2 T reduce(T identity, BinaryOperator accumulator) 3 IntStream OptionalInt reduce(IntBinaryOperator op) 4 int reduce(int identity, IntBinaryOperator op) 5 LongStream OptionalLong reduce(L.. 더보기
[java] 이것이 자바다 ch17 스트림(sorted, 루핑, 매칭, optional) 7. 요소 정렬 ▷ 요소를 오름차순 또는 내림차순으로 정렬하는 중간 처리 기능 NO 리턴 타입 메소드(매개변수) 설명 1 Stream sorted() Comparable 요소를 정렬한 새로운 스트림 생성 2 Stream sorted(Comparator) 요소를 Comparator에 따라 정렬한 새 스트림 생승 3 DoubleStream sorted() double 요소를 올림차순으로 정렬 4 Stream sorted() int 요소를 올림차순으로 정렬 5 Stream sorted() long 요소를 올림차순으로 정렬 ◎ Comparable 구현 객체의 정렬 ▷ 스트림의 요소가 객체일 경우 객체가 Comparable을 구현하고 있어야만 sorted() 메소드를 사용하여 정렬 가능. ▷ 그렇지 않다면 Cla.. 더보기
[백준 문제 10250번] ACM 호텔 문제 https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 문제 10250) ACM 호텔 문제) ACM 호텔 매니저 지우는 손님이 도착하는 대로 빈 방을 배정하고 있다. 고객 설문조사에 따르면 손님들은 호텔 정문으로부터 걸어서 가장 짧은 거리에 있는 방을 선호한다고 한다. 여러분은 지우를 도와 줄 프로그램을 작성하고자 한다. 즉 설문조사 결과 대로 호텔 정문으로부터 걷는 거리가 가장 짧도록 방을 배정하는 프로그램을 작성하고자 한다. 문제를 단.. 더보기

728x90
반응형