Programming/Java

toCharArray() - 문자열 분해하여 char 배열로 return해주는 메서드 toCharArray() str.toCharArray() 는 문자열을 한 글자씩 쪼개서 이를 char타입의 배열에 넣어 return 해주는 메서드이다. 추가로 new String(char[] charArr) 를 활용하여 배열 -> String(문자열)로 만들 수도 있다. 사용법 - String(문자열)을 char 타입의 배열로 return한다. String str = "Hello World"; char[] charArr = str.toCharArray(); // [H,e,l,l,o, ,W,o,r,l,d] - char 타입의 배열을 합쳐 하나의 String(문자열)로 return 한다. char[] charArr = {'..
자료구조 큐(Queue) 큐(Queue)의 개념 큐(Queue)는 스택(Stack)과 반대로 '선입선출 FIFO(First In First Out)'의 구조를 가지고 있습니다. 말 그대로 먼저 들어온 것이 먼저 나가는 구조이기 때문에 데이터를 추가한 순서대로 제거할 수 있기 때문에 스트리밍 등 소프트웨어 개발에서 응용되고 있습니다. 좋은 예로 은행의 번호표가 있습니다. 은행에 방문해 기다리는데 늦게 온 손님이 먼저 온 저보다 먼저 업무를 보면 안되겠죠? 이러한 상황 때문에 은행에서는 먼저 온 손님이 늦게 온 손님보다 먼저 서비스를 받게 하기 위해 번호표를 나눠줍니다. 이러한 은행의 번호표의 체계가 큐(Queue)입니다. 큐(Queue)의 연산 1. Enqueue (Insertion) : 큐 맨 뒤에 어떠..
Java 자바 제네릭(Generic) # 제네릭(Generic)을 사용해야 하는 이유 첫 번째, 제네릭 타입을 사용하면 의도하지 않은 잘못된 타입이 사용될 수 있는 문제를 사전에 제거할 수 있습니다. 자바 컴파일러는 코드에서 잘못 사용된 타입 때문에 발생하는 문제점을 제거하기 위해 제네릭 코드에 대해 타입체크를 합니다. 실행 시 타입 에러가 나는 것보다 컴파일 시 타입을 미리 체크하여 에러나는 것을 사전에 방지하기 위함입니다. 두 번째, 제네릭 코드를 사용하면 타입이 지정되기 때문에 요소를 찾아 참조를 할 때 등에 타입 변환을 할 필요가 없어 코드의 정리 및 프로그램 성능이 향상되는 효과가 있기 때문입니다. 제네릭을 사용하지 않은 경우 // 제네릭을 사용하지 않은 경우 타입변환이 필요함 ArrayList..
문자열(알파벳) 대문자/소문자로 변환 1. toUpperCase() toUpperCase() 메서드는 문자열의 모든 알파벳을 대문자로 변환합니다. String str = "hello World"; System.out.println(str.toUpperCase()); // "HELLO WORLD" 2. toLowerCase() toLowerCase() 메서드는 문자열의 모든 알파벳을 소문자로 변환합니다. String str = "hello WORLD"; System.out.println(str.toLowerCase()); // "hello world"
Java StringBuffer, StringBuilder 사용법 및 차이점 - 자바 동적 문자열 - Java에서 문자열을 다루는 대표적인 클래스로 String, StringBuffer, StringBuilder가 있습니다. 연산이 많이 이루어지지 않을 때에는 어떤 클래스를 사용해도 이슈에 무방하지만, 연산이 많아지거나 멀티쓰레드 등의 상황이 자주 발생한다면 각 클래스의 특징을 이해하고 상황에 맞게 적절하게 사용해야 합니다. 1. String vs StringBuffer / StringBuilder 먼저 String은 불변의 속성을 가집니다. String str = "hello"; // String str = new String("hello"); str += "world"; // "hello world"..
자료구조 스택(Stack) 스택(Stack)의 개념 스택(Stack)이란 마지막에 들어온 데이터가 가장 먼저 나가는 LIFO(Last In First Out) 구조를 가진 자료구조(Structure)입니다. 브라우저에서 웹 서핑 중 [뒤로가기] 버튼을 누르면 가장 마지막에 들어갔던 페이지로 이동하게되죠. 이것을 예시로 이해하시면됩니다. 스택(Stack)의 연산 삭제 pop() : 스택에서 가장 위에 있는 항목을 꺼낸다. 삽입 push(item) : item을 스택의 가장 위에 추가한다. 읽기 peek() : 스택의 가장 위에있는 항목을 반환한다. 비어있는지 확인 isEmpty() : 스택이 비어있을 때 true를 반환한다. 스택(Stack)의 구현 프로그래밍은 문제의 종류에 따라 적합한 방법을 찾아 코딩..
객체지향 프로그래밍 (Object-oriented Programming) 객체지향 언어(Object-oriented Programming) 객체지향 언어는 프로그램을 객체 단위로 나누어 객체를 중심으로 프로그램을 구성하는 언어를 말한다. 객체지향언어의 장점 1. 코드의 재사용성이 높다. 2. 코드의 관리가 용이하다. 3. 신뢰성이 높은 프로그래밍을 가능하게 한다. 클래스와 객체 클래스 클래스는 '객체를 생성하기 위한 틀'이며 속성과 기능으로 정의되어 있다. 객체 객체는 '실제로 존재하는 것' 우리가 주변에서 볼 수 있는 책상, 의자, 자동차와 같은 사물이 유형의 객체, 수학공식, 프로그램 에러와 같은 논리나 개념을 무형의 객체라고 정의한다. 클래스를 정의하고 클래스를 통해 객체를 생성하는 이유는 설계도를..
조건문과 반복문 문제 1 1부터 20까지의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하라. * 풀이 과정 * ① 우선 for문으로 반복될 때마다 i (정수타입 변수) 값에 1부터 20까지의 정수 값이 저장되어 내려가게 한다. ② 1 ~ 20의 정수가 순서대로 if문의 조건식에 들어가게 된다. ③ 총합을 저장할 변수(sum)를 잡고 if문의 조건식이 참이면 sum에 i의 값을 더해준다. ④ 전체 for문 바깥에 print문으로 sum을 출력한다. 결과 값 → 73 * 주의할 점 * ▶ int sum 변수를 선언할 때 반드시 for문 위쪽에 위치시켜야 한다. (for문 안쪽을 위치로 하면 반복할 때마다 초기화가 되기 때문에) ▶ '배수' 라는 단어가 나오면 %(나머지 연산자)를 이용해 나누어 떨..
코딩무니
'Programming/Java' 카테고리의 글 목록 (3 Page)