java
[ 프로그래머스 ] 하샤드 수
문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. 제한조건 x는 1 이상, 10000 이하인 정수입니다. 예시 arr return 10 true 12 true 11 false 13 false 풀이 class Solution { public boolean solution(int x) { boolean answer = true; String str = Integer.toString(x); // int를 string으로 변환 char[] ch = new char[str.len..
[ 프로그래머스 ] 평균 구하기
문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 예시 arr return [1,2,3,4] 2.5 [5,5] 5 풀이 class Solution { public double solution(int[] arr) { double answer = 0; double num =0; for(int i=0; i
[ 프로그래머스 ] 핸드폰 번호 가리기
문제설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한조건 phone_number는 길이 4 이상, 20이하인 문자열입니다. 예시 phone_number return "01033334444" "*******4444" "027778888" "*****8888" 풀이 class Solution { public String solution(String phone_number) { String answer = ""; String chr = "*"; int num = phone_nu..
[ 프로그래머스 ] x만큼 간격이 있는 n개의 숫자
문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 x는 -10000000 이상, 10000000 이하인 정수입니다. n은 1000 이하인 자연수입니다. 예시 x n answer 2 5 [2,4,6,8,10] 4 3 [4,8,12] -4 2 [-4, -8] 풀이 class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; long num = x; for(int i= 0; i
[수업-java] 14. 네트워크
1. 네트워크란 컴퓨터와 컴퓨터 간의 통신을 위함 서버 컴퓨터 : 클라이언트 컴퓨터의 요청으로 클라이언트 컴퓨터에 서비스를 제공하는 컴퓨터 클라이언트 컴퓨터 : 서버 컴퓨터에게 서비스를 요청하고, 그로 인해 제공된 서비스를 이용하는 컴퓨터 서버 컴퓨터의 IP주소(String)을 통해 서비스 요청 2. IP 컴퓨터를 식별할 수 있는 고유 주소 3. Port 한 컴퓨터 내에서 프로그램 구분 번호 4. IP주소를 다루기 위해 자바에서 제공하는 클래스 InetAddress.getLocalHost().getHostAddress(); String myIp = InetAddress.getLocalHost().getHostAddress(); // 내 IP 주소 반환 코드 String ip ="124.93.25.144"..
[수업-java] 13. Collection
1. Collection 객체를 그룹 단위의 데이터로 저장하는 기본적인 자료구조들의 모음 2. 배열과 컬렉션의 비교 배열 컬렉션 크기 변경 불가 저장 크기 제약 없음 한 타입의 데이터만 저장 * 예외 object[] obArr = new Object[3]; 여러 타입의 데이터 저장 추가/삭제/정렬 불편 추가/삭제/정렬 간단 3. 컬렉션 프레임워크 종류 인터페이스 특징 Collection List 저장 순서 유지 중복 저장 가능 ( 크기 제약x) Set 저장 순서 유지 불가능 중복 저장 불가능 *index가 없다. Map 키와 값을 쌍으로 저장 키는 중복 저장 불가능 (저장순서x) (값은 중복 저장 가능) : 제네릭으로 타입을 제한한다. (타입확인을 하기 위함) 4. List 기능 a. add(E e) :..
![[수업-java] 12. IO](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBx7tn%2FbtrI2YyaiS7%2FDqHmdzIq4v8qWw0kHNKJI1%2Fimg.png)
[수업-java] 12. IO
1. IO (Input Output) 컴퓨터 내부/외부 장치와 프로그램 간의 데이터를 주고 받는 것 1) 특징 단방향(한 방향으로만 흐름) 중간에 지연이 생긴다면 뒤에 있는 데이터까지 연달아 지연이 생긴다. Queue구조 (FIFO = 선입선출) 2) 처리 단위별 차이 바이트 기반 스트림 문자 기반 스트림 입력 스트림 출력 스트림 입력 스트림 출력 스트림 InputStream OutputStream Reader Writer * 입력 : 읽어오는 것 / 출력 : 작성하는 것 - 기반 스트림(ex) File~ /Piped~) : 실제로 데이터가 지나다니는 스트림 - 보조 스트림(ex) object~/Buffer) : 데이터가 지나다니지 않고 기반 스트림을 보조하는 스트림 , 기반 스트림을 먼저 생성한 후 사..
[수업-java] 11. Exception
1. 에러/오류 : 비정상 종료 상황 발생 (코드 수정으로 해결할 수 있는 오류 = 예외) - 컴파일 에러 : 문법 에러 -> 코드 수정 - 런타임 에러 : 수행 중 에러 (ex. 배열 범위 초과) -> 코드 수정 - 시스템 에러 : 컴퓨터 오작동 Throwable 예외처리의 최상위 클래스 > Exception클래스 checked Exception 예외처리를 반드시 해야하는 예외 (예외처리를 안해주면 빨간 줄) unchecked Exception 예외처리를 해주지 않아도 되는 예외 -> RuntimeException 의 후손 2. 예외 처리 방법 1) 예외 위임 throws ㄴ 해당 메소드(나)를 호출한 곳에 예외 위임 끝까지 처리하지 않고 위임만 한다면 최종적으로는 비정상 종료 (throw는 예외를 강..