울음참고 개발공부
article thumbnail
코딩 기초 트레이닝 > 9로 나눈 나머지 Java # 문자의 숫자값 얻기 - 아스키 코드 사용

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr class Solution { public int solution(String number) { int sum = 0; for (char c : number.toCharArray()) { sum += c - '0'; // char를 int로 변환하여 덧셈 } return sum % 9; } } 1 ) number 문자열을 문자 배열로 변환 2 ) 각 자리 숫자를 덧셈하여 sum 에 누적하기 이때, 각 문자의 숫자 값은 '0' 에서 빼서 얻을 수 있다. 문자에서 숫자값 얻기 '0' 은 아스키 코드에서 숫자 0의..

Java | 논리 연산자 ( || , && ) 과 ( | , & ) 의 차이
Java 2023. 7. 31. 10:58

|| 과 && " 단축 평가( Short-circuit evaluation) 논리 연산자 " 첫 번째 피연산자의 결과에 따라 두 번째 피연산자의 논리식은 평가되지 않는 연산자 || ( or ) 첫 번째 피연산자가 true 이면 두 번째 피연산자의 논리식은 평가되지않음 && ( and ) 첫 번째 피연산자가 false 이면 두번 째 피연산자의 논리식은 평가되지 않음 간단하게 말하자면 || -> true 가 하나라도 있으면 true && -> false 가 하나라도 있으면 false boolean a = true; boolean b = false; boolean result = a && b; // 첫 번째 피연산자가 true이므로 두 번째 피연산자를 평가해야 함 System.out.println(result..

article thumbnail
⭐⭐ 코딩 기초 트레이닝 > 주사위 게임 3 Java ( 미완 )

# 주사위 게임 2 2023.07.18 - [코테연습/프로그래머스] - 코딩 기초 트레이닝 > 주사위 게임 2 Java 코딩 기초 트레이닝 > 주사위 게임 2 Java class Solution { public int solution(int a, int b, int c) { int answer = 0; int answer1 = a+b+c; int answer2 = (a*a + b*b + c*c); int answer3 = (a*a*a + b*b*b + c*c*c); if(a==b) { if(b==c){ answer = answer1 * answer2 * answer3; } else { answer = answer1 * megak.tistory.com # 주사위 게임 3 https://school.prog..

코딩 기초 트레이닝 > 간단한 논리 연산 Java

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 말 그대로 간단한 논리 연산에 관한문제 논리 연산 '|| (or)' 과 '&& (and)' 의 개념을 알고있는지 확인하는 문제이다. class Solution { public boolean solution(boolean x1, boolean x2, boolean x3, boolean x4) { return (x1 || x2) && (x3 || x4); } }

thread run()과 tnread start()의 차이 / 스레드가 필요한 상황 - 쇼핑몰웹 예시
3.multi-threading 2023. 7. 31. 09:11

thread run()과 tnread start()의 차이 run() 메서드와 start() 메서드는 Java 에서 멀티스레딩을 구현하는데 사용되는 메서드입니다. run() 메서드 run() 메서드는 Thread 클래스 또는 Runnable 인터페이스를 구현한 클래스에서 오버라이드하여 스레드가 실행할 코드를 정의함 일반적인 메서드 처럼 직접 호출이 가능함 이렇게 호출하는 경우에는 단순히 해당 메서드를 실행하는 것이며, 멀티스레딩을 활용하는 것이 아님 따라서 run() 메서드를 직접 호출하는 것은 일반적으로 스레드를 생성하여 별도로 생성하는 것보다 성능면에서 이점이 없다!! 스레드를 생성하고 실행하기 위해서는 start() 메서드를 사용해야함 start() 메서드 start() 메서드는 Thread 클래스..

article thumbnail
코딩 기초 트레이닝 > 콜라츠 수열 만들기 Java

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr import java.util.*; class Solution { public int[] solution(int n) { ArrayList answerArray = new ArrayList(); while(n!=1){ if(n%2==0){ answerArray.add(n); n /= 2; }else{ answerArray.add(n); n = 3 * n + 1; } } answerArray.add(1); int[] answer = new int[answerArray.size()]; for(int i=0; i

article thumbnail
sleep() vs wait() / notify() vs notifyAll()
3.multi-threading 2023. 7. 27. 09:46

sleep() 과 wait() 의 차이점 sleep() Thread.sleep() 은 java.lang.Tread 클래스의 정적 메서드로, 현재 실행 중인 스레드를 일시적으로 지연시키는데 사용됨 sleep() 은 주로 프로그램의 특정 시간 동안 지연을 발생시키기 위해 사용됨 예 ) 주어진 시간 동안 대기하고 일정 시간마다 작업을 수행하는 등의 기능을 구현할 때 유용함 인터럽트가 발생하거나 지정된 시간이 경과하면 스레드가 실행을 재개함 락을 해제하지않아 다른 스레드가 해당 스레드가 사용 주아니 공유 자원에 접근할 수 없음 try { // 5초 동안 현재 스레드를 일시 중지합니다. Thread.sleep(5000); } catch (InterruptedException e) { e.printStackTrac..

코딩 기초 트레이닝 > 배열 만들기 4 - Java

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr import java.util.ArrayList; class Solution { public int[] solution(int[] arr) { ArrayList stkList = new ArrayList(); int i = 0; while (i < arr.length) { if (stkList.isEmpty()) { stkList.add(arr[i]); i++; } else if (stkList.get(stkList.size() - 1) < arr[i]) { stkList.add(arr[i]); i++; } ..