💻공부/Java ☕️18 [Java] - 개선된 for문 개선된 for문은 JDK 1.5이상 부터 배열과 컬렉션에 저장된 요소에 기존 for문 보다 접근하기 편리한 방법으로 처리할 수 있도록 새롭게 추가되었다. 사용방법 for(타입 변수명 : 배열 또는 컬렉션){ ... //배열 또는 컬렉션에 저장된 값이 매 반복마다 하나씩 순서대로 읽혀져서 //변수에 저장된다. //해당 변수를 출력하면 해당 인덱스대로 배열 또는 컬렉션의 원소 값이 출력된다. } 일반 for문과 개선된 for문의 성능 차이는 없지만, 개선된 for문을 사용하는 이유는 다음과 같다. 1. 코드 가독성이 좋아진다. 2. arrayIndexOutofBoundsException을 방지할 수 있다. 자주 사용되는 상황 1. ArrayList의 원소 출력 2. 배열의 원소 출력 💡 향상된 for문은 따.. 2023. 1. 15. [Java] - 정렬 Java에는 util 패키지내에 Array와 Collections를 활용하여 내장 정렬함수를 지원한다. 배열의 오름차순 정렬 Arrays.sort()메서드의 매개값으로 primitive type 배열이나 String 배열을 지정해주면 오름차순 정렬을 지원한다. primitive type 배열의 오름차순 정렬 import java.util.Arrays; public class Sort{ public static void main(String[] args){ int arr[] = {4, 22, 33, 15, 17, 19}; //primitive type 배열 Arrays.sort(arr); for(int i : arr){ System.out.print("["+ i +"]"); } } } => [4][15][.. 2023. 1. 14. [Java] - Comparator & Comparable Comparator & Comparable 객체 정렬에 필요한 메서드(정렬기준 제공)를 정의한 인터페이스이다. 💡정렬(sort) 두 대상을 비교 후 자리 바꿈을 반복하는 것 종류 - 오름차순, 내림차순 💡기본 정렬 조건이 오름차순인 이유 Comparable 인터페이스의 compartTo 메서드를 기준으로 하기 때문이다. Java에서 인스턴스를 서로 비교하는 클래스들은 모두 Comparable 인터페이스가 구현되어 있다. Comparable : 기본 정렬기준을 구현하는데 사용 Comparator : 기본 정렬기준 외에 다른 기준으로 정렬하고자할 때 사용 public interface Comparable{ int compareTo(Object o); //자기 자신과 객체 o를 자신과 비교 } public i.. 2023. 1. 14. [Java] List와 ArrayList List 란? Java의 컬렉션 프레임워크 중 하나로 데이터를 저장하는 추상자료형이다. 길이가 정해져 있지 않기 때문에 길이를 알 수 없는 배열을 더할 때 유용하게 사용할 수 있다. 데이터의 순서를 보장하고, 데이터의 중복을 허용한다. ArrayList 란? ArrayList란 자바의 List 인터페이스를 상속받은 클래스 중 하나이다. 배열과 같은 순차리스트이며 인덱스로 내부의 객체를 관리한다. 한번 생성되면 크기가 변하지 않는 배열과는 달리 ArrayList는 크기가 가변적이다. 객체들이 추가되어 저장 용량(capacity)을 초과하면 자동으로 부족한 크기만큼 저장 용량(capacity)이 늘어난다는 특징이 있다. //일반 배열 String[] arr = new String[2]; //방 2개인 배열 .. 2023. 1. 10. EOF EOF란? End of File의 약자로 데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없음을 나타내는 용어이다. 알고리즘에서는 입력값을 얼마나 받을 수 있는지 명시하지 않을 경우 EOF를 사용한다. 2022. 10. 18. StringBuilder String은 불변(immutable) 객체이다. 한 번 생성되면 내용을 바꿀 수 없다. String A = "Apple"; String B = "Banana"; System.out.println(A+B); //새로운 String객체를 생성 위 보기처럼 String객체와 String객체를 더 하면 기존 데이터에 더해지는 게 아니라 새 문자열이 생성되고, 이전 문자열은 가비지 컬렉터로 이동한다. 성능저하 발생 => StringBuilder를 사용하자! StringBuilder란? String과 String을 더할 때 새로운 객체를 생성하는 것이 아니라 기존의 데이터에 더하는 방식이다. append()메서드 : 문자열을 더하는 역할 toString()메서드 : 만들어진 문자열 출력하는 역할 사용방법 Stri.. 2022. 10. 15. 이전 1 2 3 다음