유랑하는 나그네의 갱생 기록

だけど素敵な明日を願っている -HANABI, Mr.children-

반응형

Study/Java 19

[Java] String 객체 생성법 탐구 (with String Pool)

String? Java의 String 클래스, 많이 사용하는 클래스 중 하나죠? 이번 글에서는 String을 String Pool과 함께 살펴보려고 합니다.String 객체 생성법 String 클래스는 문자열을 표현하는 데 사용됩니다. String 객체는 불변(immutable)이며, 한번 생성된 문자열은 변경할 수 없습니다. String 객체의 생성은 두 가지 방식, 문자열 리터럴(literal) 방식과 new 키워드 방식으로 나뉩니다.String str1 = "Hello, World!";String str2 = new String("Hello, World!");뭐가 더 효율적일까요? 문자열 리터럴 방식이 더 효율적이고 일반적으로 사용됩니다. 무슨 이유에서 일까요? 첫번째 방법이 더 효율적인 이유는 S..

Study/Java 2024.09.08

[Java] Stream 훑어보기

Java Stream API? 저번 시간에는 Java 8에서 도입된 람다식에 대해서 알아보았습니다.2024.08.25 - [Study/Java] - [Java] Lambda 훑어보기 [Java] Lambda 훑어보기Lambda Expressions? 람다 표현식은 Java 8에서 도입되었습니다. 함수형 프로그래밍 스타일을 Java에 도입하면서 코드를 간결, 명확하게 작성할 수 있도록 한 것이죠. 익명 함수(anonymous function)를 정의하claris.tistory.com 이번 시간에는 람다 표현식과 함께 도입된 Stream API에 대해서 훑어보겠습니다. 스트림(Stream)은 말 그대로 데이터의 연속된 흐름이라 볼 수 있습니다. 이 API는 컬렉션(List, Set 등), 배열과 같은 데이터..

Study/Java 2024.09.01

[Java] Lambda 훑어보기

Lambda Expressions? 람다 표현식은 Java 8에서 도입되었습니다. 함수형 프로그래밍 스타일을 Java에 도입하면서 코드를 간결, 명확하게 작성할 수 있도록 한 것이죠. 익명 함수(anonymous function)를 정의하는 방법으로 하나의 메서드를 간단하게 표현할 수 있습니다. 한 가지 예시를 들어 보여드리겠습니다. // 기존 익명 클래스 사용 방식 Comparator comparator = new Comparator() { @Override public int compare(Integer o1, Integer o2) { return o1.compareTo(o2); } }; 기존에는 익명 클래스를 사용하여 Comparator 인터페이스를 구현했지만, 람다식을 활용하면 다음과 같이 간결한..

Study/Java 2024.08.25

[Java] Java로 풀면 KMP를 써야하는 브론즈 문제가 있다?

관련 링크 : https://www.acmicpc.net/problem/16916  약 1년 전, 백준 스트릭을 유지하던 때가 있었습니다. 자바로 코테 준비를 시작한 지 얼마 안 됐기도 하고, 여러 가지 준비로 바빠서 가볍게 몸풀기로 푸려던 문제 중 하나였습니다. 간단하게 contains를 하면 되지 않을까 싶었지만? import java.io.*;import java.util.*;public class Main { //12:56- public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ..

Study/Java 2024.08.18

[Java] 컬렉션 시간 복잡도

List 순서가 있는 데이터 집합. (데이터 중복 허용 o) Add Remove Get Contains Data Structure ArrayList O(1) O(n) O(1) O(n) Array LinkedList O(1) O(1) O(n) O(n) Linked List CopyonWriteArrayList O(n) O(n) O(1) O(n) Array Set 순서를 유지하지 않는 데이터 집합. (데이터 중복 허용 x) Add Contains Next Data Structure HashSet O(1) O(1) O(h/n) Hash Table LinkedHashSet O(1) O(1) O(1) Hash Table + Linked List EnumSet O(1) O(1) O(1) Bit Vector Tree..

Study/Java 2023.05.04

[Eclipse] 삼성 코딩테스트를 위한 연습 환경 만들기 (+단축키)

https://www.eclipse.org/downloads/ Eclipse Downloads | The Eclipse Foundation The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 415 open source projects, including runtimes, tools and frameworks. www.eclipse.org 이클립스는 학부생 이후 다시는 쓸 일이 없을 거라 생각했는데 쓰게 됐네요 ^^; 삼성 코테에서는.. Mac이 아닌 Windows를 쓴다는 점 .. 이클립스 IDE로 주어져서 인텔리제이를 못쓴다는 점 .. 인텔리제이를 못쓴다는 점 ... 인텔리제이를 못쓴다는 점 ..

Study/Java 2023.04.04

[IntelliJ] OpenJDK Java 11과 spring Mac M1 초기 환경 세팅

2024.10.18 - [Study/Java] - [IntelliJ] Mac 자바 버전 설정 및 변경 [IntelliJ] Mac 자바 버전 설정 및 변경That easy 늘 그렇듯이 새로운 프로젝트 설정을 맞춰주는 건 번거로운 일입니다. 서론은 이만 줄이고 바로 본론으로 들어가겠습니다. JDK를 아직 안 받았다? IntelliJ를 통해 JDK를 손쉽게 설치할 수claris.tistory.com[2024.10.18 수정] Java 21 버전과 관련된 설정은 이 게시글을 참고하시면 되겠습니다. 아니, 글 좀 작성하려고 티스토리에 들어오니까 400 에러가 떴습니다..글쓰기 버튼도 안 눌리고 페이지 전환도 안되고.. 사용하는 브라우저에 쿠키가 많이 쌓이면 이렇게 된다던데.인터넷 사용기록을 다 지우니까 해결은 ..

Study/Java 2023.02.28

IntelliJ 학생 라이센스 갱신하기

오랜만에 인텔리제이를 켜니 라이센스 만료가 됐다고 합니다. 이 언어 저 언어 왔다갔다 해서 미안해 ㅜㅜ 앞으로는 자바에 사랑을 가득 줄 겁니다..🥰 학교 웹 메일에 접속하니 메일이 하나 왔더라구요.. 아직 졸업 안 했으니까? 전 "아직" "지금" "현재" 대학생 신분입니다. 그니까 아직은 쓸 수 있음.. 어쨌든 메일로 보내 준 라이센스 갱신 링크를 클릭하면 정보 입력도 기존에 사용하던 계정이라면 그대로 입력되어 있었습니다. 제출을 하면.. 바로 라이센스가 갱신됩니다. 기존에 있던 인텔리제이 세팅도 지울 겸 인텔리제이를 삭제하려니 런치패드에서 삭제가 안 됐습니다. 그럴 땐 터미널에 아래의 명령어를 입력하면 됩니다. ~ cd ~/Library/Application\ Support rm -rf JetBrain..

Study/Java 2023.01.06

[Java] 자바란 무엇인가? (자바의 특징과 자바 개발 환경 설치)

자바는 무엇일까. 자바는 썬 마이크로시스템즈(Sun Microsystems)가 1995년에 얼씨구절씨구... 이런 게 중요한가? 뇌에 집어넣을 수 있는 정보의 양은 한정되어있다. 핵심만 딱딱 집어넣도록 하자. 1. 어디서 많이 본 문법 ... ? C와 C++을 먼저 배우고 자바를 접해본 사람이라면 뭔가 익숙한 언어처럼 느껴질 것이다. 맞다. 자바는 C++과 유사하다. 포인터를 쓰지 않을 뿐. 메모리 관리가 쉽다. 2. 객체지향 언어 대표적인 절차지향 언어는 C다. 여기서 클래스가 추가되고 C++ 이 객체지향.. 블라블라... 자바는 여러 클래스로 하나의 프로그램을 만든다. 클래스와 객체로 프로그램을 만드는 언어를 객체지향 언어라고 한다. 클래스와 객체의 개념과 절차지향 언어와 객체지향 언어의 차이에 대한..

Study/Java 2021.04.14
반응형