Java 7

[Java] 멀티스레딩 연습 - 금고, 해커, 경찰 게임 구현

프로그램 개요이 프로그램은 다음과 같은 역할을 가진 세개의 스레드로 구성됩니다.  구성1. 금고 (Vault)임의의 비밀번호를 가지고 있으며, 해커가 추측한 비밀번호를 검증 2. 해커 스레드 (HackerThread)금고의 비밀번호를 추측하는 스레드오름차순(AscendingHackerThread)과 내림차순(DescendingHackerThread)으로 비밀번호를 추측. 3. 경찰 스레드 (PoliceThread)해커를 막으려는 역할10초 동안 카운트다운을 하며, 시간이 다 되면 프로그램 종료 실행 흐름 1. Vault 객체 생성임의의 비밀번호를 가진 금고 생성 2. 해커 및 경찰 스레드 생성오름차순 해커(AscendingHackerThread), 내림차순 해커(DescendingHackerThread)..

Java & Spring Boot 2024.11.24

[Java] Generic 동작 원리 및 용도

해당 포스트는 JAVA의 Generic에 대한 동작 원리와 용도에 대한 내용을 포함하고 있습니다.  Java에서 제네릭(Generic)은 다양한 타입의 객체를 다루는 메소드나 컬렉션 클래스에 타입 체크와 타입 캐스팅을 컴파일 시간에 처리할 수 있게 도와주는 프로그래밍 기법입니다. 제네릭을 사용하면 코드의 재사용성을 높이고, 타입 안정성을 강화할 수 있습니다. 제네릭의 동작 원리와 용도에 대해 쉽게 설명해 보겠습니다. 동작 원리제네릭을 사용하면 클래스, 인터페이스, 메소드를 정의할 때 타입(Type)을 파라미터로 사용할 수 있습니다. 이 타입 파라미터는 실제 클래스 타입이 사용될 때까지 구체적인 타입을 지정하지 않고, 코드 작성 시점에는 추상적인 '타입 변수'로서 사용됩니다. 컴파일 시, 컴파일러는 이 타..

Java & Spring Boot 2024.02.12

[Java] .stream() 동작 원리 및 용도

해당 포스트는 JAVA의 .stream()에 대한 동작 원리와 용도에 대한 내용을 포함하고 있습니다..stream()을 자주 사용하지만 해당 메소드의 동작 원리에 대한 막연한 궁금증이 생겨 글을 작성하게되었습니다.  동작 원리1. 스트림 생성 : 스트림은 Collection 인터페이스의 stream() 메소드 호출, Arrays.stream(T array), 또는 Stream 인터페이스의 of(), generate(), iterate() 등의 메소드를 통해 생성됩니다. 스트림 생성 시 데이터 소스는 변경되지 않으며, 데이터의 추상적인 뷰만을 제공합니다.2. 중간 연산(Intermediate Operations) : 필터링(filtering), 매핑(mapping), 정렬(sorting) 등 데이터 스트림..

Java & Spring Boot 2024.02.12

[Java] 10진수 <-> 2진수, 8진수, 16진수

10진수 -> 2진수, 8진수, 16진수int decimal = 10;String binary = Integer.toBinaryString(decimal); // 10진수 -> 2진수String octal = Integer.toOctalString(decimal); // 10진수 -> 8진수String hexaDecimal = Integer.toHexString(decimal); // 10진수 -> 16진수2진수, 8진수, 16진수 -> 10진수int binaryToDecimal = Integer.parseInt(“1010”, 2);int octalToDecimal = Integer.parseInt(“12”, 8);int hexaToDecimal = Integer.parseInt(“A”, 16);

카테고리 없음 2024.01.27