본문 바로가기

IT

(66)
프로그래머스 인덱스 바꾸기 -Java 문제 풀이 my_string 문자열을 배열에 넣은 뒤 num1의 값을 따로 저장하고 num1의 자리에 num2 값을 넣고 num2자리에 따로 저장한 num1 값을 넣는다. 코드 class Solution { public String solution(String my_string, int num1, int num2) { String answer; String value; String[] answer_arr = new String[my_string.length()]; answer_arr = my_string.split(""); value = answer_arr[num1]; answer_arr[num1] = answer_arr[num2]; answer_arr[num2] = value; answer = Stri..
프로그래머스 영어가 싫어요 - Java 문제 풀이 value라는 string 문자열을 하나 선언한 후 numbers의 한 글자씩 추가해준 뒤, one이면 1이 리스트에 들어가도록 if문을 넣어준다. 리스트를 Long 타입으로 변환한 후 return 해준다. charAt() String으로 저장된 문자열 중 한 글자만 선택하여 Char 타입으로 변환. (String 문자열에서 한글자씩만 value 값에 추가하기 위함) Long.parsLong(); string 문자열을 long으로 변환. 코드 import java.util.*; class Solution { public long solution(String numbers) { String value = ""; ArrayList answer_list = new ArrayList(); String..
Java 패키지, 예외처리 1. 패키지 패키지 : 관련이 있는 클래스와 인터페이스의 묶음 (클래스와 인터페이스는 패키지의 멤버이다.) 전체적으로 계층 구조의 클래스 라이브러리라고 할 수 있다. (패키지 단위로 계층적으로 분류됨) 패키지 용도 쉽게 찾아 사용할 수 있음 이름 충돌을 피할 수 있음 (예. graphics.Rectagle와 java.awt.Rectangle이 구분됨) 접근 제어를 위함 시스템 패키지 : JDK가 제공하는 클래스 라이브러리 JDK와 함께 설치됨 클래스 파일들은 기능에 따라 패키지로 묶여 분류됨 일반적으로 jar 파일로 압축되어 있다 C:\Program Files\Java\jdk-15.0.1\lib\jrt-fs.jar -> 기본적으로 이 위치에 있음 가장 기본이 되는 최상위 시스템 패키지 - java (대부..
Java 제네릭, 람다식 본 게시물은 개인 공부용 포스트 입니다. 1. 제네릭 제네릭 의미 제네릭 클래스, 제네릭 인터페이스, 제네릭 메소드 - 클래스, 인터페이스, 메소드를 정의할 때 타입 매개변수 (타입 파라미터)를 선언하고 사용할 수 있다. 장점 여러 유형에 걸쳐 동작하는 일반화된 클래스나 메소드를 정의할 수 있다. 자료형을 한정함으로써 컴파일 시점에 자료형 검사가 가능하다. (실행 오률을 찾아 고치는 것은 어렵기 때문) 캐스트 (형변환) 연산자의 사용이 불필요하다. 예) List 인터페이스를 구현한 ArrayList 클래스 Class ArrayList implements List ...{ boolean add(E e){ ... } E get(int index){ ... } e remove(int index){ ... } ..
Java 인터페이스, 다형성 (추상 클래스, 열거 자료형, 익명 클래스) 본 게시물은 개인 공부용 포스트 입니다. 1. 추상 클래스 추상 메소드 메소드 선언 - abstract 키워드 사용 추상 메소드 : 몸체의 구현이 없이 형식만 존재하는 메소드. 반환형, 이름, 인자 선언만 존재 자식 클래스에 상속될 때, 몸체의 구현이 필요 상반된 의미의 final과 함께 사용 x 예) abstract public class Shape{// 추상 클래스이기 때문에 객체 생성 안됨 ... abstract public double getArea();// 모양이 정해지지 않았기 때문에 면적을 계산할 수 없음 } 추상 클래스 클래스 정의에 abstract 키워드 사용 데이터 필드나 일반 메소드 포함할 수 있음 추상 클래스 - 객체 생성을 할 수 없음 추상 메소드를 포함하는 클래스는 반드시 추상 ..
Java 클래스 이론 본 게시물은 개인 공부용 포스트 입니다. 1. 클래스 정의와 사용 1) 메소드 정의 클래스 정의 내부에 존재. 헤더와 몸체로 구성 메소드 정의 문법 [접근 제어자] 반환형 메소드이름 ([자료형 인자[, 자료형 인자...]]){ 문장 ... } //예제 public double getArea(){ return radius * redius * PI; } 2) 생성자 객체가 생성될 때 자동으로 실행되는 메소드 (객체의 필드 값을 초기화하거나 메모리 할등 당의 작업) 형식 - new 클래스 이름(인자...) new 연산자를 이용하여 객체를 생성(메모리 할당) 하고 생성자가 호출(데이터 필드의 초기화)되면서 객체의 잠조값을 변수에 대입(=) 생성자는 보통의 메소드 정의 방법과 다르게 new 객체를 생성할 때 자동..
Java 기본 문법 (배열, 문자열, Scanner 클래스와 입출력, 클래스 정의) 개인 공부용 포스트 입니다. 배열 배열 : 같은 자료형의 원소를 정해진 개수만큼 가지고 있는 객체 선언할 때 크기를 지정하는 것이 아니라 초기화 또는 생성할 때 정해짐 숫자 인덱스를 사용하여 특정 원소를 다룸 참조형 변수 (포인트 변수와 비슷함 -> 주소값을 가지고 있음) 배열 선언 형식 -> 자료형[] 변수이름; 또는 자료형 변수이름[]; 자료형 변수이름[숫자] -> X (선언할때 크기지정 안됨) 배열 초기화 예) // 선언과 동시에 중괄호를 이용하여 초기값 지정 int a[] = {1, 2, 3, 4, 5}; int anArray[][] = {{1, 2, 3}, {4, 5, 6}}; int b[]; b = {1, 2, 3};//오류 //new 연산자를 이용 -> 원소가 숫자인 경우 0, 참조형인 경우..
프로그래머스 대문자와 소문자 - Java 문제 풀이 1글자씩 대문자인지 소문자인지 확인한 후 대문자이면 소문자로, 소문자이면 대문자로 변환하여 문자열로 붙여준 후 return 한다. Charactor.isUpperCase() 괄호 안의 인자가 영문 대문자인지 소문자인지 여부를 판단하여 true 또는 false 값을 리턴함. 대문자 -> true 소문자 -> false (char만 가능) string.charAt() string으로 지정된 문자열 중에서 한 글자만 선택하여 char 타입으로 변환 괄호 안의 인자에 숫자를 넣어서 몇번재 글자를 변환해줄 것인지 선택. toUpperCase(), toLowerCase() 대상 문자를 대문자로, 소문자로 변환 코드 class Solution { public String solution(String my_..

반응형