[Java 필수 문법] 6. 입출력
·
Java
1️⃣ 입력1. Scanner 클래스📌 특징java.util.Scanner를 사용하여 편리하게 입력을 받을 수 있음공백과 개행을 기준으로 값을 쉽게 분리 가능System.in을 사용하므로 입력 속도가 느림 (큰 입력에는 비효율적)📌 장단점장점사용법이 간단함정수, 실수, 문자열 등 다양한 타입 지원단점입력 속도가 느림nextLine() 사용 시 개행 문제 발생 가능📌 주요 메서드메서드설명nextInt()정수 입력nextLong()long 입력nextDouble()실수 입력next()공백 기준으로 문자열 입력nextLine()한 줄 입력hasNext()입력이 남아 있는지 확인📌 예제import java.util.Scanner;public class Main { public static void ..
[Java 필수 문법] 5. 문자열
·
Java
1️⃣ StringString의 특징불변(Immutable): 한 번 생성된 문자열은 변경 불가능.새로운 문자열을 생성해야 변경이 가능하여, 성능적으로 비효율적일 수 있음.String Pool 사용: 동일한 문자열을 재사용하여 메모리 절약 가능. String 선언 및 초기화// 리터럴 방식 (String Pool 사용, 같은 값이면 재사용)String str1 = "Hello";// new 키워드 사용 (Heap 메모리에 새로운 객체 생성)String str2 = new String("Hello");💡 리터럴 방식과 new 키워드 방식의 차이리터럴 방식("Hello")은 String Pool에 저장되어 동일한 문자열이 있으면 재사용됩니다.new String("Hello")는 Heap 메모리에 새로운 객..
[Java 필수 문법] 4. 배열(Array)과 리스트(List)
·
Java
Java에서 데이터를 저장하는 방법 중 대표적인 두 가지는 배열(Array)과 리스트(List)이다.배열은 고정된 크기의 연속된 메모리 공간, 리스트는 크기가 동적으로 변할 수 있는 컬렉션이다. 1️⃣ 배열(Array)배열은 같은 타입의 여러 개의 데이터를 저장하는 자료구조다. 배열 선언 및 초기화📌 1차원 배열 선언 및 초기화// 배열 선언int[] arr1; // 일반적인 선언 방식int arr2[]; // C 스타일의 선언 방식 (비추천)// 배열 선언 + 크기 지정 (초기값: 0)int[] arr3 = new int[5]; // [0, 0, 0, 0, 0]// 배열 선언 + 초기화int[] arr4 = {1, 2, 3, 4, 5}; // 크기는 자동 설정int[] arr5 ..
[Java 필수 문법] 3. Java에서 데이터 비교 (== vs equals())
·
Java
Java에서 데이터를 비교할 때 == 연산자와 equals() 메서드를 유의해서 사용해야 하는 이유는 Primitive Type과 Reference Type의 동작 방식이 다르기 때문이다. 1️⃣ == 연산자와 equals()의 차이비교 방법비교 대상비교 내용예제==Primitive Type값을 직접 비교int a = 10; int b = 10; a == b → ✅ true==Reference Type객체의 주소(참조값)를 비교String s1 = "hello"; String s2 = new String("hello"); s1 == s2 → ❌ falseequals()기본적으로 Reference Type객체가 의미적으로 같은지를 비교 (Override 가능)String s1 = "hello"; Strin..
[Java 필수 문법] 2. Primitive Type vs. Reference Type
·
Java
1️⃣ Primitive Type (기본형 타입)Primitive Type은 Java에서 가장 기본적인 데이터 타입으로, 값 자체를 저장하는 타입이다.Primitive Type은 스택(Stack) 메모리에 저장되며, 객체가 아니기 때문에 메서드를 가질 수 없고, null을 가질 수도 없다. Java의 Primitive Type 8가지타입크기기본값설명byte1 byte0정수형 (범위: -128 ~ 127)short2 byte0정수형 (범위: -32,768 ~ 32,767)int4 byte0정수형 (범위: -2^31 ~ 2^31-1)long8 byte0L정수형 (범위: -2^63 ~ 2^63-1)float4 byte0.0f실수형 (단정도 부동소수점)double8 byte0.0실수형 (배정도 부동소수점)boo..