반응형

자바 24

GC(Garbage Collector)에 대하여

자바 애플리케이션은 JVM(Java Virtual Machine) 위에서 작동하는데, JVM이 작동할 때 메모리 구조와 GC는 애플리케이션의 응답 시간과 성능에 영향을 미친다. GC GC(Garbage Collection) 자바 애플리케이션에서 사용하지 않는 메모리를 자동으로 수거하는 기능. 메모리를 할당하고 직접 해제 해야하는 C언어 등과 달리 개발자들이 신경쓰지 않고 자바 GC를 이용하게 된다. JVM 메모리 영역 Permanent Generation : Class, Method 등의 코드가 저장되는 영역. JVM에 의해서 사용. 생성된 객체 정보의 주소가 저장된 공간 Young Generation : 자바 객체가 생성되자마자 저장되고 생긴지 얼마 안 된 객체가 저장되는 곳. 자바 객체가 생성되면 이..

JAVA_기초 공부 2023.02.17

[JAVA] 멀티쓰레딩이란

프로세스(process) : 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램, 활성 프로그램 쓰레드(thread) : 어떠한 프로그램, 프로세스 내에서 실행되는 흐름의 단위 멀티스레딩 CPU 시간을 최대한 활용하기 위해 CPU가 여러 스레드를 동시에 독립적으로 실행하며, 동시에 프로세스 리소스를 공유하는 기능. 특정 프로그램을 둘 이상의 스레드로 세분화하여 프로그램을 빠르고 쉽게 실행할 수 있는 Java 기능. 장점 단일 스레드에서 예외가 발생하면 스레드가 독립적이므로 다른 스레드에 영향을 미치지 않아, 일부가 차단된 경우에도 프로그램이 계속 실행될 수 있다. 여러 프로세스를 사용하는 기존 병렬 프로그램에 비해 성능을 높일 수 있다. CPU 시간을 효과적으로 활용할 수 있다. 복잡한 응용 프로그램이나..

JAVA_기초 공부 2023.02.17

[JAVA] 삼진법 뒤집기

문제 설명 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. [제한사항] n은 1 이상 100,000,000 이하인 자연수입니다. [입출력 예] n result 45 7 125 229 코드 class Solution { public int solution(int n) { int answer = 0; String an = ""; while (n > 0){ an = (n % 3) + an; n /= 3; } StringBuffer strBuffer = new StringBuffer(); String reverse = strBuffer.append(an).reverse().toString();..

[JAVA] 핸드폰 번호 가리기

문제 설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. [제한 조건] phone_number는 길이 4 이상, 20이하인 문자열입니다. [입출력 예] phone_number return "01033334444" "*******4444" "027778888" "*****8888" 코드 class Solution { public String solution(String phone_number) { String answer = ""; for (int i = 0; i < phone_n..

[JAVA] 이상한 문자 만들기

문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. [제한 사항] 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력 예 s return "try hello world" "TrY HeLlO WoRlD" 입출력 예 설명 "try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바..

[JAVA] 자릿수 더하기

[문제 설명] 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. [제한사항] N의 범위 : 100,000,000 이하의 자연수 [입출력 예] N answer 1236 987 24 입출력 예 설명 입출력 예 #1 문제의 예시와 같습니다. 입출력 예 #2 9 + 8 + 7 = 24이므로 24를 return 하면 됩니다. 코드 import java.util.*; public class Solution { public int solution(int n) { int answer = 0; String num = String.valueOf(n); String[] array = ..

[JAVA] 평균 구하기

[문제 설명] 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. [제한사항] arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. [입출력 예] arr return [1,2,3,4] 2.5 [5,5] 5 [내 풀이 코드] class Solution { public double solution(int[] arr) { int total = 0; for (int i = 0; i < arr.length; i++) { int sum = arr[i]; total = total+sum; } double answer= (double)total/arr.length; return answer; } }

[JAVA] 문자를 정수로 바꾸기

[문제 설명] 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. [제한 조건] s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니다. s는 "0"으로 시작하지 않습니다. 입출력 예 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다. str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다. [내 풀이 코드] class Solution { public int solution(String s) { int answer = Integer.parseInt(s); return answer; } }

[JAVA] 수박수박수박수박수

[문제 설명] 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. [제한 조건] n은 길이 10,000이하인 자연수입니다. [입출력 예] n return 3 "수박수" 4 "수박수박 [내 풀이 코드] class Solution { public String solution(int n) {- String answer = ""; for(int i=1; i

반응형