Localtime 클래스 공식 문서 예시를 통해 이전까지 헷갈렸던 접근제어자, static 키워드,private 생성자에 대한 이해도 함께한다. LocalTime 클래스란?LocalTime 클래스는 java.time 패키지에 포함되어 있으며, 날짜 정보 없이 시간 정보만을 관리합니다. 이 클래스는 생성된 이후 변경할 수 없는 불변(immutable) 클래스(final)이다. LocalTime 클래스는 시, 분, 초, 나노초를 나타내며, 다양한 시간 연산을 지원하며 모든 연산은 새로운 LocalTime 객체를 반환하게 된다. 1. LocalTime 객체 생성* Java 공식문서에 생성자가 쓰여있지 않다면?1. localtime 은 공식 문서에 생성자가 쓰여 있지 않다. 이건 어떤 의미일까? 이 말은 Lo..
Java의 객체 참조 변수Java에서는 객체를 생성할 때마다 메모리에 해당 객체가 저장된다. 객체 참조 변수는 이러한 객체의 메모리 주소를 참조한다. 아래의 구체적 예시를 통해 이 과정을 이해해보자.1. 객체 참조 변수 선언Person person;여기서 Person은 클래스 이름이고 person은 객체 참조 변수다. 객체 참조 변수는 객체가 아니다.이 줄은 Person 타입의 변수를 선언했지만, 아직 인스턴스(객체)를 생성하지 않았습니다. 따라서 person 변수는 현재 null 상태다.2. 인스턴스 생성new Person("마동석");new 키워드는 Person 클래스의 새로운 인스턴스를 생성하는 데 사용된다.Person("마동석")는 Person 클래스의 생성자를 호출하여 새로운 객체를 만든다.이 ..
향상된 for문(enhanced for loop)은 Java 5부터 도입된 간결한반복문으로, 주로 배열이나 컬렉션을 순회할 때 사용된다. 향상된 for문 기본 사용법향상된 for문의 기본 문법은 다음과 같다:for (type variable : collection) { // code} 여기서 collection은 배열이나 컬렉션 객체가 될 수 있으며, variable은 각 요소를 받아 처리하는 변수다. 배열 순회배열을 순회하는 예제int[] numbers = {1, 2, 3, 4, 5};for (int number : numbers) { System.out.println(number);}예제를 보면 알다시피 number는 배열의 index 값이 아니라 배열의 구성요소다.컬렉션 순회향상된 for..
java 속 Strin 클래스와 String의 함수를 정리하자String이란?Java는 String 클래스 타입 사용해 문자열을 조작하고 나타냄. "", 즉 큰따옴표로 감싸져있는 문자열. 객체가 한 번 생성되면 그 내용을 변경할 수 없고 새로운 객체가 생성됨.String 선언 및 할당문자열 리터럴 이용한 할당String str1 = "Hello"; // 문자열 리터럴new연산자 이용String str2 = new String("Hello"); // new 연산자를 사용한 생성문자열 배열String[] words = {"This", "is", "a", "list", "of", "words"};String 메소드들str1.equals(str2) : str1과 str2 동일한 값 비교/ true of fal..
java 코테를 풀다 보면 Array와 ArrayList를 조금씩 헷갈리게 됨. 이 둘의 명확한 차이를 구분하자. Array(배열)1. Array 정의법int[] arr = new int[5]; // 크기가 5인 정수 배열을 생성2. Array 특징고정된 데이터 구조라 한 번 생성하면 크기 변경이 불가함인덱스를 통해 접근유연성이 떨어짐, 대신 접근이 빠르다. 3. Array 관련 함수Arrays.sort(arr) : 오름차순 정렬Arrays.sort(arr, Collections.reverseOrder()); : 내림차순 정렬Arrays.sort(arr, 0, 3) : 부분 정렬Arrays.length : 배열 길이 구하기 length()는 str의 사이즈 구하는 것 ArrayList(리스트)1. A..
java 코드를 쓸 때 아무 생각 없이 length 와 length()로 사용해 이 둘을 헷갈려했었는데 이 둘의 차이를 구분하며 class의 개념도 좀 더 명확히 하고자 한다.배열의 길이: .length배열은 Java 언어의 기본 자료형배열의 길이는 필드로 저장된다. 즉, 배열 객체의 속성으로 직접 저장되며, 이는 length라는 이름의 public final 필드로 접근할 수 있게 해주는 것!배열의 길이를 얻기 위해 .length를 통해 호출함int[] numbers = {1, 2, 3, 4, 5};int length = numbers.length; // 배열의 길이를 얻습니다. 문자열, 컬렉션의 길이: .length() 또는 .size() 문자열(String)은 클래스.클래스의 속성이나 메서드에 ..
StringTokenizer 클래스는 Java의 java.util 패키지에 포함되어 있으며, 문자열을 여러 토큰으로 분할하는 데 사용됩니다. 이 클래스는 특정 구분자(예: 공백, 쉼표 등)를 기준으로 문자열을 여러 부분으로 나눌 때 유용합니다. 각각의 부분을 토큰이라고 합니다. StringTokenizer의 사용 예시를 들어 StringTokenizer st = new StringTokenizer(br.readLine()); 코드는 BufferedReader를 통해 읽어온 한 줄의 문자열(br.readLine())을 공백을 기준으로 토큰화합니다. 기본적으로 StringTokenizer는 공백 문자(스페이스, 탭, 개행 문자 등)를 구분자로 사용하여 문자열을 분할합니다.StringTokenizer의 주요 ..
