JAVA 2주차

현준·2024년 6월 3일

사관학교

목록 보기
3/23

1일차

랜덤(난수) 뽑는 방법

import java.util.Random;
Random ran = new Random();
int rNum = ran.nextInt();

  • 랜덤 난수 : int rNum = ran.nextInt(0 ~ 숫자 범위);
    5일 경우 0~4까지 랜덤 숫자가 나옴
    1~5까지 뽑을 경우
    //int rNum = ran.nextInt(5) + 1;

스캐너를 통해서 문자열 입력받는 방법

import java.util.Scanner;
Scanner sc = new Scanner(System.in);
1. String id = sc.next();
2. String id = sc.nextline();

  • line은 띄어쓰기까지 인식

문자열 비교

변수명.equals(비교할 문자열);

  • // String aa = "bts"
    system.out.print(aa.equals("bta")) -----> false
    system.out.print(aa.equals("bts")) -----> true

2일차

반복문

WHILE

조건식이 참일 경우 반복 이후 거짓일 경우 반복문을 빠져나옴

  • 반복은 해야하지만 정해진 횟수는 없을 경우 사용

while(조건식) {
}

  • 반복문에서 break문을 사용해서 반복문을 종료 할 수 있다.

do ~ while

  • 무조건 한번은 실행하고 조건식을 본다

    do {
    }while(조건식)

for문

for(초기화 구문; 조건식; 반복 후 작업) {
작업문
}

  • 진행 순서 : 초기화 구문 > 조건식 > 작업문 > 반복 후 작업
  • i가 0부터 n까지 > 0 ~ n-1 까지 (즉 n개 출력)
    i가 1 부터 n까지 > 1 ~ n-1 까지 (n-1개 출력)

3일차

자료구조

대량 데이터를 효율적으로 관리하기 위한 메커니즘

선형 자료구조

자료가 일렬로 선형을 이루며 저장되는 연결구조

  • 연결 리스트(Linked List), 배열(Array), 스택(Stack), 큐(Queue), 등

비선형 자료구조

자료의 순서가 불규칙하고 일렬로 나열하기 힘든 연결구조

  • 트리(Tree), 그래프(Graph), 등

배열

같은 타입의 여러 변수를 하나의 묶음으로 다루는 것

    1. 배열 : 레퍼런스 변수 (변수가 주소를 가지고 있다)
    2. 배열의 인덱스는 0부터 시작
    3. 배열의 길이는 1부터 시작
    4. 배열은 생성 시 반드시 길이를 지정해야 하며 길이를 변경할 수 없다.
    5. 배열은 같은 타입의 데이터만 들어갈 수 있다.
  • 배열 선언

  1. int intArray [];
  2. int [] intArray
  • 배열 생성
    int Array = new int [원소 개수] ;

  • 배열 선언과 동시에 생성
    int array1[] = {1,2,3,4,5};

    배열의 크기와 값이 정해질 때 사용 가능

  • 배열 길이 확인
    intArray.length 출력

  • 배열 데이터 확인하는 방법
    Arrays.toString(배열명)

  • 다차원 배열 데이터 확인
    Arrays.deepToString(배열명)

  • 배열안에 최고값 (최솟값)찾기
    Arrays.stream(배열명).max().getAsInt()
    Arrays.stream(배열명).min().getAsInt()

  • 배열은 주소가 복사 된다

    래퍼런스 변수이기 때문에 두 배열은 데이터를 공유한다

4일차

for ~each

배열안의 모든 값을 순차적으로 접근하기 위한 반복문

for ( 데이터타입 변수명 : 선언되어있는배열) { }

다차원 배열

int [][]arr = new int[][];
배열의 행열 값이 미지정일때

int [][]arr = {{1,2,3}, {4,5,6}, {7,8,9}};
배열의 값과 크기를 알고 있을 때

  • 출력은 대괄호로 출력이됨

메소드 method

객체의 행위를 표현하기 위한 것
반복적으로 사용되는 코드를 줄이기 위해서 사용
어떤 작업을 수행하기 위한 명령문의 집합

  • return 값이 없으면 메소드 생성할 때 void 사용

    plus(1,5);

메소드 오버로딩 - 중복정의

동일한 이름의 메소드를 여러개 만드는 기술

  • 메소드 오버로딩 조건
  1. 매개변수의 개수가 다를 때 가능
  2. 매개변수의 데이터 타입이 다를 때 가능

0개의 댓글