Java

    [Error Log] A problem occurred configuring root project..(Spring-boot)

    JAVA version : 11 Spring boot : 3.1.5 A problem occurred configuring root project 'hello-spring'. Could not resolve all files for configuration ':classpath'. Could not resolve org.springframework.boot:spring-boot-gradle-plugin:3.0.2. Required by: project : > org.springframework.boot:org.springframework.boot.gradle.plugin:3.0.2 No matching variant of org.springframework.boot:spring-boot-gradle-pl..

    [JAVA] JVM(JAVA Virtual Machine) 이란?

    1. JVM 이란? JVM은 JAVA Virtual Machine, 자바 가상 머신의 약자이며, JAVA는 하드웨어가 아닌 JVM을 통해 동작하며, JVM은 OS와 JAVA 애플리케이션 사이의 중개자 역할을 한다. JVM은 자바 바이트코드를 실행할 수 있는 환경을 제공해준다. 이를 통해 JAVA는 애플리케이션은 OS에 관계없이, 플랫폼에 독립적으로 실행할 수 있게 된다. 또한 JVM은 메모리를 관리하고 Garbage Collection실행을 통해 메모리를 최적화한다. 2. JVM 구조 2 - 1. 자바 메모리 구조 (Runtime Data Area) JAVA 프로그램을 수행하기 위해 OS에서 할당받은 메모리 공간으로, 힙(Heap)과 메서드(Method)는 전체 공유자원으로 분류되고 스택(Stack), ..

    [JAVA] 자바(JAVA)란?

    1. 자바(JAVA)의 개념 자바(JAVA)는 1995년에 미국의 '썬마이크로시스템즈'라는 회사에서 개발한 객체지향 언어 중 하나이며, 운영체제에 독립적이라는 것이 가장 큰 특징이다. 즉, 자바 언어로 작성된 프로그램은 운영체제의 종류와 관계없이 실행 가능하다. 때문에 운영체제에 따라 프로그램을 변경하지 않아도 실행이 가능하다는 것이다. 또한 다른 객체지향 언어에서 잘 사용되지 않는 부분을 제외시킴으로써 표현이 간결해지고, 비교적 배우기 쉬운 언어이다. 2. 자바(JAVA)의 장단점 2-1. 자바(JAVA)의 장점 - 객체지향 프로그래밍 언어(OOP: Object Oriented Programming) 객체별로 코드를 작성하고 목적에 맞는 객체와 객체를 조합하여 전체 프로그램을 완성하는 프로그램 설계 방..

    [Data Structure] 우선순위 큐(Priority Queue)란?

    1. 우선순위 큐(Priority Queue)의 개념 우선순위 큐(Priority Queue)는 큐(Queue)와 구조가 비슷하다. 다만 다른 점이 있다면 큐(Priority Queue)는 들어온 순서대로 데이터가 나가는 것이 아니라, 우선순위를 정해 우선순위가 높은 순서대로 데이터가 나가게 된다. 우선순위 큐(Priority Queue)는 리스트(List) 또는 힙(Heap)을 이용해 구현이 가능하며 일반적으로 힙(Heap)을 많이 이용한다. 더보기 힙(Heap)이란? 이진 트리 자료구조의 일종으로 항상 루트 노드를 제거한다. 1) 최소 힙(min Heap) - 루트 노드가 가장 작은 값을 가진다. - 즉, 값이 작은 데이터가 우선적으로 제거된다. 2) 최대 힙(max Heap) - 루트 노트가 가장 ..

    [IDE]IntelliJ - IntelliJ SpringBoot 프로젝트 생성

    IntelliJ로 SpringBoot 프로젝트 생성하기! 프로젝트를 생성을 거의 안하다 보니, 만들 때마다 매번 찾아보는 것 같다. 막상 만들어보면 시간도 안걸리고, 어려운게 없는데 ㅠ 할 때마다.. ㅠㅠ 그래서 오늘은 IntellJ SpringBoot 프로젝트 생성하는 방법을 써보려고 한다. 먼저, IntelliJ를 실행하는데, IntellJ를 첫 실행하면 아래 왼쪽 이미지처럼 Create New Project를 클릭! 기존에 작업하고 있던 프로젝트가 있다면 아래 오른쪽 이미지처럼 File - New - Project 를 클릭! 그럼, 아래와 같은 이미지가 나오는데, 여기서 Spring Intiaizr를 선택하고, 오른쪽에 프로젝트에 대한 정보를 써준다. - Name : 프로젝트 명 - Location..

    프로그래머스[Level 1] - 정수 제곱근 판별 (java)

    - 문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. - 제한 사항 n은 1이상, 50000000000000 이하인 양의 정수입니다. -나의 풀이 class Solution { public long solution(long n) { long answer = 0; while(answer * answer < n){ answer++; } if(answer * answer == n){ answer++; answer*=answer; }else{ answer = -1; } return answer; } } n이 어떤 수의 제곱인지 알..