분류 전체보기
-
Stack, Queue 개념Java/자바의정석 2023. 2. 26. 23:48
Stack과 Queue의 개념을 잡기 전 아래의 그림을 먼저 살펴보자. 눈으로 보기에도 확연히 다른 구조를 이루고있다. Stack이란? LIFO : Last in Fast Out 마지막에 저장된 것을 가장 먼저 꺼낸다. 저장(push), 추출(pop) 한쪽이 막힌상자 : 위쪽으로만 추출이 가능 배열이 적합 Queue란? FIFO : First In First Out 제일 먼저 저장된 것을 제일 먼저 꺼낸다. 저장(offer), 추출(poll) 양쪽이 뚫려있는 상자 링크드 리스트가 적합 Stack의 메서드 메서드 설명 boolean empty() 비어있는지 확인 Object peek() 맨 위의 객체를 반환, pop과는 달리 Stack에서 객체를 꺼내지는 않는다. Object pop() 삭제 Object ..
-
자바 예제로 살펴보는 Calendar 여러가지 기능들(2)Java/자바의정석 2023. 2. 23. 23:19
이전 게시글들에서 Calendar에 관해 공부를 하였고 이번에는 Time에 관한 기능들을 실습해보자! package JavaChap10; import java.util.*; class Ex10_3 { public static void main(String[] args) { final int[] TIME_UNIT = {3600, 60, 1}; // 큰 단위를 앞에 놓는다. final String[] TIME_UNIT_NAME = {"시간 ", "분 ", "초 "}; Calendar time1 = Calendar.getInstance(); Calendar time2 = Calendar.getInstance(); time1.set(Calendar.HOUR_OF_DAY, 10); // time1을 10시 20분..
-
자바 예제로 살펴보는 Calendar 여러가지 기능들(1)Java/자바의정석 2023. 2. 23. 23:19
앞선 게시글에서 Calendar에 대한 여러가지 기능들을 자세히 살펴보았다. 이제는 활요을 해서 사용해보자. 아래의 코드는 자바의정석 연습예제로 있는 문제이다. package Chap10; import sun.util.resources.CalendarData; import java.util.*; class Ex10_2 { public static void main(String[] args) { // 요일은 1부터 시작하기 때문에, DAY_OF_WEEK[0]은 비워두었다. final String[] DAY_OF_WEEK = {"","일","월","화","수","목","금","토"}; Calendar date1 = Calendar.getInstance(); Calendar date2 = Calendar.ge..
-
자바 Calendar의 여러가지 기능들Java/자바의정석 2023. 2. 23. 23:19
자바에서 우리는 주로 Calendar 클래스를 통하여 날짜를 계산한다. 우선 Calendar 클래스부터 살펴보자 public abstract class Calendar implements Serializable, Cloneable, Comparable Calendar.java 클래스를 살펴보면 보다 싶이 추상 클래스이다. 추상크래스 이기 때문에 우리는 getInstance를 통하여 구현된 객체를 얻어와야한다. Calendar cal = new Calendar(); Calendar cal = Calendar.getInstance(); 위와같이 선언한다면 첫번째 선언은 에러가 발생한다. 이유는 추상클래스임으로 인스턴스 생성이 불가능하다. Calendar를 사용하기 위해서는 getInstance를 통하여 구현..
-
Math메서드, Round(), Rint() 비교하기Java/자바의정석 2023. 2. 22. 23:41
앞전에 Math 메서드를 공부하면서 Round,와 Rint에 대해 공부하였는데 Round는 반올림, Rint는 짝수를 반올림한다고 하였는데 코드를 보며 좀 더 자세하게 이해해보도록 하자. public class RoundTest { public static void main(String[] args) { double sum = 0; double sum1 = 0; double sum2 = 0; for (double i = 1.5; i
-
Wrapper클래스란?Java/자바의정석 2023. 2. 22. 23:41
Wrapper클래스란? 기본 자료타입(primitive type)을 객체로 다루기 위해서 사용하는 클래스들을 래퍼 클래스(wrapper class)라고 한다. 기본 자료 타입 래퍼 클래스 boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 기본자료타입에는 위의 표와같이 8개의 타입이있다. 래퍼클래스를 사용할때는 char, int를 제외한경우 앞글자를 대문자로 해주기만하면 끝이난다. 객체지향언어인데 모든것이 객체가 아니다? 라는 질문에 대응하기위한 클래스가 아닐까 싶다. 왜 기본형이라는 예외를 두었는지의 원인은 성능때문이라고한다. 참조형의 경우 값을 읽어올때 참조형 주소를 읽고 ..
-
자바 Math의 주요 메서드Java/자바의정석 2023. 2. 22. 23:40
Math의 주요 기능들 메서드 기능 abs 절대값 max 최대값 min 최소값 ceil 올림 floor 버림 round 반올림 rint 반올림(짝수) 이러한 기능들이 있다. 아래의 코드를 보면서 하나하나 짚어보자. 이코드는 자바의정석 Ex09_13의 예제이다. package JavaChap09; import static java.lang.Math.*; import static java.lang.System.*; class Ex9_13 { public static void main(String args[]) { double val = 90.7552; out.println("round("+ val +")="+round(val));// 반올림 val *= 100; out.println("round("+ val..
-
여러가지 StringBuffer메서드Java/자바의정석 2023. 2. 22. 23:40
StringBuffer의 메서드에는 대표적으로 무엇이있을까? 메서드 수행 tringBuffer append(boolean b) StringBuffer append(char c) StringBuffer append(char[] str) StringBuffer append(CharSequence s) StringBuffer append(double d) StringBuffer append(float f) StringBuffer append(int i) StringBuffer append(long lng) StringBuffer append(Object obj) StringBuffer append(String str) StringBuffer append(StringBuffer sb) 인수로 전달된 값을 문자열..