Java 프로그램의 시작점인 main 메서드는 프로그램이 실행될 때 가장 먼저 호출되는 메서드임. 마치 건물의 정문과 같은 역할을 함.
public static void main(String[] args) {
// 프로그램이 시작되는 곳
}
public: 공개 접근 허용
static: 객체 생성 없이 호출 가능
void: 반환값 없음
String[] args: 명령행 인수 받기
java MyProgram hello world 실행 시 args[0]="hello", args[1]="world"가 됨Java의 자료형은 크게 두 가지로 나뉨:
// 기본자료형 예시
int age = 25; // 정수 저장
double height = 175.5; // 실수 저장
boolean isStudent = true; // 논리값 저장
// 참조자료형 예시
String name = "김자바"; // 문자열 저장
byte smallNum = 127; // 1바이트 (-128 ~ 127)
short mediumNum = 32000; // 2바이트 (-32,768 ~ 32,767)
int normalNum = 2000000; // 4바이트 (약 -21억 ~ 21억)
long bigNum = 9000000000L; // 8바이트 (L 또는 l 붙임)
char letter = 'A'; // 2바이트 (홑따옴표 사용)
float smallDecimal = 3.14f; // 4바이트 (f 또는 F 붙임)
double largeDecimal = 3.14159; // 8바이트 (기본값)
boolean isTrue = true; // true 또는 false만 저장 가능
boolean isFalse = false;
String greeting = "안녕하세요";
String empty1 = ""; // 빈 문자열
String empty2 = null; // null 값
String empty3 = " "; // 공백 문자 하나
문자열에서 한 글자 추출: String.charAT(0)
String word = "Hello";
char firstChar = word.charAt(0); // 'H' 반환
char lastChar = word.charAt(4); // 'o' 반환
문자열을 숫자로 변환: Integer.parseInt(String)
String numberStr = "123";
int number = Integer.parseInt(numberStr); // 123으로 변환
String decimalStr = "3.14";
double decimal = Double.parseDouble(decimalStr); // 3.14로 변환
다른 타입을 문자열로 변환: String.valueOf()
String.valueOf(Object obj)의 실제구현은 삼항연산자를 통해 인자가 null이면 "null"을 리턴해주고 null 아니면 obj.toString() 메소드를 호출해 줌
int age = 25;
String ageStr = String.valueOf(age); // "25"로 변환
double height = 175.5;
String heightStr = String.valueOf(height); // "175.5"로 변환
// null 안전 처리도 자동으로 해줌
Object nullObj = null;
String result = String.valueOf(nullObj); // "null" 문자열 반환
// ❌ 잘못된 예시 - 큰 타입에서 작은 타입으로 직접 변환 불가
int bigNumber = 300;
short smallNumber = bigNumber; // 컴파일 에러!
// ✅ 올바른 예시 - 명시적 형변환 필요
int bigNumber = 300;
short smallNumber = (short) bigNumber; // 강제 형변환
short a = 10;
short b = 20;
short result = a + b; // ❌ 컴파일 에러!
// short끼리 연산하면 자동으로 int가 됨
short a = 10;
short b = 20;
int result = a + b; // ✅ 올바른 방법
String str1 = ""; // 빈 문자열 (길이 0)
String str2 = null; // 아무것도 없음
String str3 = " "; // 공백 문자 하나 (길이 1)
// 각각 다른 상태이므로 주의해서 사용할 것
char singleChar = 'A'; // 홑따옴표 - 한 글자만
String text = "Hello"; // 쌍따옴표 - 여러 글자 가능
Java의 변수와 자료형은 프로그래밍의 기초 중의 기초임. 기본자료형은 값을 직접 저장하고, 참조자료형은 값이 있는 위치를 저장한다는 차이점을 기억하자.
특히 자료형 변환 시에는 데이터 손실이 발생할 수 있으므로 항상 주의해야 함. 또한 String의 유용한 메서드들을 잘 활용하면 문자열 처리가 훨씬 쉬워짐.