전체 글 161

[자료구조] 스택(Stack)

스택~~https://jamanbbo.tistory.com/54 [Stack]사칙연산 계산기 구현(2) - 후위 표기 수식 계산 저번 포스팅에서는 사칙연산 계산기 프로그램을 만들기 위한 중위 표기식을 후위 표기법을 이용해 수식을 표현하는 방법을 알아보았다. [Stack]사칙연산 계산기 구현(1) - 후위 표기법 이제 후위 jamanbbo.tistory.com 1. 스택의 정의 삽입과 삭제가 한쪽 끝(top)에서만 이루어지는 자료구조 2. 스택의 특징 후입 선출로 가장 나중에 들어온 것이 가장 먼저 나간다 3. 스택의 연산 1) push 스택에 데이터를 추가 2) pop 스택에서 데이터를 삭제 3) isEmpty 스택이 공백상태인지 검사 4) isFull 스택이 포화상태인지 검사 5) peek 스택 top..

자료구조 2023.01.26

[자바 개념] 자바 데이터 타입

1.기본타입 1) 종류 종류 설명 저장공간 범위 boolean 논리값 1bit true / false char 유니코드 문자 16bits \u0000 ~ \uFFFF byte 부호 있는 정수 8bits -128~127 short 부호 있는 정수 16bits -32768 ~ 32767 int 부호 있는 정수 32bits -2147483648 ~ 2147483647 long 부호 있는 정수 62bits -9223372036854775808 ~ 9223372036854775807 float 실수 32bits 1.40239846E-45f ~ (표현 가능 양수 범위) 3.40282347E+38f double 실수 64bits 4.94065645841246544E-324 ~ (표현 가능 양수 범위) 1.797693..

자바 2023.01.13

[자바 개념] stream

1. 스트림의 개념 자바 8부터 추가된 컬렉션과 배열의 저장 요소를 하나씩 참조해서 람다식(함수적 스타일)으로 처리할 수 있도록 해주는 반복자 2. 스트림의 특징 1) 람다식으로 요소 처리 코드를 제공한다 스트림이 제공하는 대부분의 요소 처리 메소드는 함수적 인터페이스 매개 타입을 가지기 때문에 람다식 또는 메소드 참조를 이용해서 요소 처리 내용을 매개값으로 전달할 수 있다 ArrayList arrayList = new ArrayList(); Stream stream = arrayList.stream(); stream.forEach( s -> System.out.println(s)); 2) 내부 반복자를 사용하므로 병렬 처리가 쉽다 외부 반복자 개발자가 코드로 직접 컬렉션의 요소를 반복해서 가져오는 코드..

자바 2023.01.13

[자바 개념] switch

1. switch 특징 각 case 문 마다 break를 적어주면 해당 case만 검사하고 switch 빠져나감 만약 각 case문 마다 break를 적어주지 않으면 다음 case를 검사하러 감 default는 필수는 아니지만 써 주는 것이 안전하다 2. switch 코드 예시 Scanner scanner = new Scanner(); int num = scanner.nextInt(); switch(num) { case 2: System.out.println("a"); break; case 4: System.out.println("b"); break; default: System.out.println("etc"); break; }

자바 2023.01.12

[자바 개념] Math

1. Math 클래스 개념 기본적인 산술 연산 제공하는 클래스 2. Math 클래스 특징 java.lang 패키지에 포함되어 있어서 import java.lang.*; 을 적어야 사용가능하다 모든 멤버 메소드는 static 타입이기 때문에 객체 생성 없이 바로 사용가능하다 3. 주요 메소드 1) abs 절댓값 return, return 형태 확인 필요 import java.lang.*; Math.abs(-3); // 절댓값을 double로 return 2) ceil 올림 import java.lang.*; Math.ceil(32.3); // 32.3을 올림한 33을 double형태로 return 3) floor 내림 import java.lang.*; Math.floor(2.3) // 2.3을 내림한 2..

자바 2023.01.12

[자바 개념] 배열, Arrays, ArrayList

1. 배열 1) 선언 //길이 5인 int 담고 있는 배열 생성 int intArray[] = new int[5]; int[] intArray = new int[5]; //해당 내용 가지고 있는 배열 생성 int intArray[] = {1,2,3}; int[] intArray = {1,2,3}; //2차원 배열 선언 int[][] arr = new int[2][3] // 행2 열3인 2차원 배열 선언, 예: {{1,2,3},{4,5,6}} 2. Arrays 1) 개념 배열을 다루기 위한 다양한 메소드가 포함되어 있는 클래스 2) 특징 모든 메소드는 static이므로 객체 선언 없이 메소드를 사용할 수 있다 import java.util 필요 3) 메소드 종류 sort 배열 오름차순 정렬 char[]을 ..

자바 2023.01.11

[자바 개념] Wrapper

1.개념 boolean, char, byte, short, int, long, float, double 의 기본타입을 객체로 다루기 위해 jdk에 만들어진 8개 클래스를 묶어서 wrapper라고 한다 2. 생긴 이유 자바는 객체 지향 언어이기 때문에 객체로 무언가를 처리하는 경우가 많다. 이를 위해, 기본 타입의 값을 객체로 만들어 사용할 수 있도록 한다 java.lang 패키지에서 제공된다 3.종류 기본타입 boolean char byte short int long float double 객체 Boolean Character Byte Short Integer Long Float Double 4.특징 대부분의 메소드가 static이기 때문에 인스턴스 생성 없이 바로 사용가능하다 5. 주요 메소드 1) v..

자바 2023.01.11

[자바 개념] Character, String

1. Character 메소드 1) isUpperCase, isLowerCase Character.isUpperCase(c) // t 혹은 f return 2) toUpperCase, toLowerCase Character.toLowerCase(c) // c를 소문자로 바꾼 결과 return 3) forDigit int num = 7; Character.forDigit(num, 10); //num을 10진수를 이용하여 char로 변환, 여기서는 '7'을 return 4) isDigit Character.isDigit('3'); // character가 숫자이면 true 출력 아니면 false 출력 2. String 1) 개념 문자열을 나타낸다 2) 특징 java.lang 패키지에 포함된 클래스 일단 생성..

자바 2023.01.06

[자바 개념] Collection과 Collections

1. Collectoin 1) 개념 여러 원소를 담을 수 있는 자료구조 2) Collection이 나오게 된 이유 배열은 여러 개의 데이터를 다루기에 편리하지만, 삽입과 삭제가 불편하다 또한 배열은 선언시에 크기도 함께 선언해야 해서, 크기가 정해지지 않은 경우 사용이 불편하다. 컬렉션은 배열이 가진 고정된 크기라는 단점을 해결하기 위해 객체들을 쉽게 삽입, 삭제, 검색할 수 있도록 한 가변의 컨테이너이다. 3) Collection 특징 컬렉션은 많은 자료구조를 만들어 제공한다 컬렉션은 Generic 기법으로 되어있다. 특정 타입만 다루지 않고 여러 종류의 타입으로 변신하도록 하기 위해 컬렉션 요소는 객체만 가능 primitive 타입은 사용할 수 없다 하지만 primitive타입을 써도 자동박싱에 의해..

자바 2023.01.06

[ICT 인턴십] 회고록 2 - 면접부터 최종 결과까지

https://lmj-coding-diary.tistory.com/5 ICT인턴십 회고록 1 - 지원부터 서류작성까지 4개월의 ict인턴십이 끝나고 새해를 맞이한 요즘... 기록의 필요성을 느껴 예전에 끄적이던 블로그를 다시 활성화해야겠다는 생각을 하게 되었다. 이번에는 기필코!!! 꾸준히 블로그를 써볼 테야 lmj-coding-diary.tistory.com 지난 게시글에 이어지는 내용입니다. 4. 서류 결과 이력서, 자기소개서, 포트폴리오를 작성하여 서류 지원을 마치고 결과가 나왔다. 두 곳에 서류합격을 했고 한 곳은 서류탈락이었다. 서류탈락이었던 곳에서는 친절하게도 무엇이 부족했고 어떤 점이 좋았는지 피드백을 주었다. 떨어져서 아쉬웠지만 새삼 감동이었던... 이곳에서 알려준 나의 부족했던 점은 깃허..

기록 2023.01.06