728x90
반응형

2025/10/17 2

[Java] Stack(스택) 자료구조

StackLIFO(Lasn In, First Out) 자료구조즉 마지막에 넣은 데이터가 가장 먼저 나오는 자료구조이다. 웹 브라우저 뒤로가기 히스토리 동작을 생각해보면 알 수 있다.Java의 Stackimport java.util.Stack;Stack stack = new Stack();메서드메서드설명push(E item)스택의 맨 뒤에 데이터 추가pop()스택의 맨 뒤 데이터 제거 후 반환peek()스택의 맨 뒤 데이터 확인 (제거X)Stack 클래스의 문제불필요하게 느림 (Thread-safe)모든 연산이 안전하게 스레드용으로 처리한 번에 한 스레드만 접근 가능하도록 락(lock)을 걸어서 동작하지만 대부분의 코드에서는 하나의 스레드만 사용하기 때문에 불필요예전 방식의 오래된 클래스다른 컬렉션들(Li..

Dev./Java 2025.10.17

[Error] 계산기 만들기 트러블 슈팅

기능 구상Level1. 클래스 없이 만드는 계산기양의 정수 2가지 , 사칙연산기호 한가지 입력양의정수는 각각 하나씩 입력, 정규식 검사 후 int 타입으로 변수에 저장사칙연산 기호는 char 타입으로 변수 저장연산 진행switch문을 사용해 각 연산자에 맞게 진행나눗셈 연산에서 두번째정수에 0이 입력될 경우 오류 출력exit 문자열 입력 전까지 계산 진행각각의 인풋값 입력단계에서도 exit 입력시 연산 끝낼 수 있도록 로직 작성각각의 계산이 종료될때도 exit 입력할 수 있도록 작성대소문자 관계없이 비교하는 String.equlsIgnoreCase를 발견해서 적용Level2. 객체 지향 계산기기능으로 클래스 분리 Calculator 클래스사칙연산 수행인풋값 입력시 검증 메소드결과값 반환, 연산 결과 리..

Dev./Error. 2025.10.17
728x90
반응형