[자료구조] LinkedList 구현 - 데이터 추가 / addLast[Java]
·
자료구조 + 알고리즘
하이~~자료구조 오랜만!! 살짝 복습하고 왔다. 요즘 맨날 하체근력운동하는 것처럼 꾸준히 자료구조 공부하자 으쌰으쌰 새로 추가한 addLast 메소드를 살펴보자. 확실히 필드, 메소드, 생성자, 도트연산자 등 학습하고 나니까 자료구조를 공부하기 수월해졌다.
[혼자 공부하는 자바] 7/06 06-3 [생성자] [생성자 선언] [생성자 오버로딩]
·
JAVA
생성자 ㄴ모든 클래스에 하나 이상 반드시 존재. ㄴ선언하지 않았다면 기본 생성자가 자동으로 추가됨. >>소스 파일에 생성자를 선언하지 않아도, 바이트 코드 파일에는 기본 생성자가 존재함. >>생성자를 명시하는 경우: 객체를 다양한 값으로 초기화하기 위함! 기본 생성자: 중괄호 안이 비어있는 생성자. [public] 클래스( ) { } 클래스가 public class로 선언되었을 때 기본생성자에도 public이 붙는다. 객체 생성하려면 생성자 호출이 반드시 필요하다. ㄴ객체 생성시 초기화를 담당: 객체 초기화란? 객체를 사용할 준비를 하는 것. (필드, 메소드 관련) 생성자가 성공적으로 실행되면 --> 힙 영역에 객체생성 & 객체번지 리턴 리턴된 객체번지는 변수에 저장된다. (클래스 변수에.) ㄴnew연산..
[혼자 공부하는 자바] 7/06 06-2 [필드]
·
JAVA
필드 에는 객체의 고유데이터, 객체가 가지는 '부품'들, 객체의 현재 상태 데이터 저장한다. 예를 들면.. 밑에 사진과 같은 정보들. 이런 정보들은 필드로 선언된다. 필드 작성할 때 저러한 내용이 들어가는 것이다. 생성자나 메소드 중괄호를 제외한 클래스 중괄호 어디든 필드를 작성할 수 있다. (생성자, 메소드 중괄호 안에 선언된 것들은 모두 로컬 변수....) 저번에도 봤지만 필드 선언하는 것은 마치 변수 선언하는 것처럼 보인다. 그래서 보통 '클래스 멤버 변수'라고 부르기도 하는데, 저번에 학습했듯이 이거는 엄밀히 잘못된 표현이고 그냥 필드라는 용어를 사용하는 것이 좋다. -예은 클래스- String live_in = "인천"; String boyfriend = "yhs"; int age = 22; i..
[혼자 공부하는 자바] 7/06 06-1 [클래스 선언] [클래스 구성] [new 연산자] [필드] [생성자] [메소드]
·
JAVA
챕터 6 클래스로 들어간다. ㅡ 객체 생성을 위한 클래스 선언 ㅡ 필드 선언하고 생성 후 -> 읽어들이고 변경하는 방법 ㅡ 생성자를 선언하고, 생성자에서 필드를 초기화하기 ㅡ 메소드 기능 이해하기 ㅡ 패키지 선언 방법 알기 ㅡ 접근 제한자의 종류, 사용 방법 객체는 속성과 동작을 가진다. 속성은 "필드", 동작은 "메소드" 라고 한다. 객체를 설계한다고 표현한다. (object modeling) (현실 세계 객체의 속성과 동작을 추려내어 소프트웨어 객체의 필드와 메소드로 정의) 객체는 독립적이고, 다른 객체와 메소드를 통해 상호작용한다. >>객체가 다른 객체의 기능을 이용하는 것이 "메소드" 호출하는 것!! >>객체의 상호작용 = 객체간 메소드 호출. by매개값, 리턴값 리턴값 = 객체명.메소드(매개값1..
[혼자 공부하는 자바] 7/04 05-2 배열2
·
JAVA
5챕터 남은 내용 : 다차원 배열, 객체를 참조하는 배열, 배열 복사, 향상된 for문 지금까지 공부한 배열은 1차원 배열입니다. 2차원 배열은 뭘까요? 수학의 행렬을 떠올리면 된다고 합니다. 가로 인덱스와 세로 인덱스를 사용합니다. 행과 열이요~! int[][] scores = new int[2][3]; 요로코롬 쓴다. 우와.. 변수 scores가 배열A(행,길이2)를 참조하여 scores[0]과 scores[1]이 있다. 그런데 여기서 조곰 충격!! scores[0]이랑 scores[1]은 그냥 1차원배열에서의 항목 정도가 아니라 또 다른 배열을 참고할 수 있다!! 뜨든 배열A의 scores[0]과 scores[1]은 또 다른 배열B와 배열C를 각각 참조한다..! (열,길이3) 그래서 scores.l..
[혼자 공부하는 자바] 7/03 05-2 배열
·
JAVA
이번 학습 키워드 배열/ 인덱스/ 배열 길이/ 배열 선언/ 배열생성/ 다차원 배열/ 향상된for문 -->변수는 1개 데이터만 저장 가능하다!! 많은 양의 데이터를 적은 코드로 손쉽게 처리해보자 드디어 배열 목차다! 다시 공부하는 마음으로 고고싱 수많은 사람들의 성적을 배열로 저장하면, 그 과목의 평균은 for문으로 돌리면 아주 손쉽게 구할 수 있다. int sum = 0; for(int i=0; i>그래서 저번에 자료구조 공부할 때, 데이터 추가할 때마다 배열 길이 늘리게 수정하는 코드를 작성해본 적이 있다. 아무튼 배열 길이를 변경할 수 없었자나용 배열 쓰려면 배열 변수를 선언해야 한다! 헤헤 몬가 되게 신난당 암튼 두가지 선언 방법 타입[] 변수; or 타입 변수[]; >>대괄호는 변수를 선언하는 기..
[혼자 공부하는 자바] 7/02 05-1 참조타입
·
JAVA
ㅇ참조 타입 이해하기 ㅇ메모리 영역의 세부 영역과 기능 알기 ㅇ참조 변수의 ==, != 연산과 NullPointerException 알기 ㅇString타입, 배열 타입, 열거 타입 선언 학습하기 자바의 타입 -기본타입(primitive type), -참조타입 ㅇ참조타입 ㄴ객체의 번지를 참조하는 타입 ㄴ배열, 열거, 클래스, 인터페이스 아 저번에 어레이리스트 불러온거 생각나는데! 배열이라는게 참조타입으로 타입이었지!! ㄴ기본타입 변수는 실제 값을 직접 저장하지만, 참조타입 변수는 메모리의 번지를 저장한다 우선! JVM이 사용하는 '메모리 영역(Runtime Data Area)' 알아보기 JVM은 운영체제에서 할당받은 메모리 영역을 다음과 같이 세부 영역으로 구분해 사용한다. Runtime Data Area..
[혼자 공부하는 자바] 7/02 04 조건문과 반복문
·
JAVA
제어문으로 프로그램 실행을 제어해보자 / 조건문과 반복문/ 조건문 if문, swich문 Math.ramdom()메소드 --> 0.0~ 1.0 사이의 double타입 난수 하나를 리턴 0.0은 포함, 1.0은 미포함 1~10 정수 얻으려면 (int) Math.random() * 10 + 1 int num = (int) (Math.random() * n) + start; 주사위 뽑기 int num = (int) (Math.random() * 6) + 1; 로또번호 뽑기 int num = (int) (Math.random() * 45) +1; ㅇif문과 마찬가지 조건 제어문 ㅇswitch(변수)가 어떤 case 값 갖느냐 ㅇif는 경우의 수가 많아질수록 else-if가 길어지는데, switch문은 변수 값 따..
[혼자 공부하는 자바] 6/30 02-4~03-2
·
JAVA
연산자의 종류: 단항, 이항, 삼항 ㅇ단항 연산자 : 피연산자가 하나 / 부호연산자, 증감연산자, 논리 부정 연산자(!)ㄴ부호 연산자: 정수or실수타입 변수에도 사용 가능, 부호연산자 결과는 int라는 거 유의!그래서 컴파일 에러---> byte b = 100; byte result = -b; int여야한다.ㄴ증감 연산자: 주의할 점 -> 증감 연산자가 변수 뒤에 있으면 '다른 연산자 먼저' 처리. 앞에 있으면 증감 후 다른 연산자 처리, 예를 들어서int x = 1; int y = 1;int result1 = ++x + 10; int result2 = y++ + 10;result1) x=2된 후에 result1= 12됨result2) result2= 11된 후에 y=2됨cf) ++i와 i=i+1의 연산..
[혼자 공부하는 자바] 6/28 02-4 변수와 시스템 입출력
·
JAVA
키워드 => System.out.println() / System.out.print() / System.out.printf() / System.in.read() / Scanner 시스템의 표준 출력 장치 : System.out 표준 입력 장치 : System.in ++ 우리는 지금까지 표준 출력 장치(모니터)로 출력하기 위해 System.out의 println()메소드를 사용해 온 것. printf는 개발자가 원하는 형식화된 문자열을 출력 가능 -> format string 출력 자릿수, 소수 자릿수 제한 가능. printf("형식문자열", 값1, 값2, ...); ㅇ 형식 문자열에 포함될 값이 2개 이상일 경우.. 값의 순번 (argument_index$)를 알려줘야 한다. 1$는 첫 번째 값, 2$는..