전체 글 259

객체(Object)(1) - 객체 지향 언어, 클래스, 추상화, 캡슐화, 필드, 생성자, 메소드

1. 정의 (1) 객체(Object) : 현존하는 모든 것들(유형, 무형, 사물, 개념 등) 자신의 속성과 기능이 다른 것들과 구분되어 식별이 가능한 것들 Java에서는 new 연산자를 통해 메모리 영역에 생성된 것을 말한다. (2) 객체 지향 언어 : '객체'를 지향하는 언어, '객체 중심'으로 운영된다. (3) 객체 지향 프로그래밍 : 현존하는 모든 것들 간의 상호작용을 코드로 구현하는 과정 2. 클래스(class) (1) 정의 : 구현하고자 하는 프로그램 상의 객체를 만들기 위해 객체들의 속성(특성)에 대해 정의한 것 (2) 등장 배경 ① "변수"로만 프로그래밍을 하면? ▷ 변수는 하나의 자료형에 하나의 값만 저장할 수 있다. ▷ '홍길동'과 '마이콜'이라는 객체를 만들어 보자. 그럼 이름과 나이,..

2차원 배열로 값들의 합계와 평균 출력하기

public void DimentionArray() { int[][] arr = {{1, 2, 3, 4, 5}, {3, 4, 5, 6, 7}, {5, 5, 5, 5, 5}, {7, 7, 7, 7, 7}}; int sum = 0; int avg = 0; int count = 0; for(int i = 0; i < arr.length; i++) { for(int j = 0; j < arr[i].length; j++) { //합계 sum += arr[i][j]; count++; } } System.out.println("합계: " + sum); System.out.println("평균: " + (double) sum / count); } ▼실행결과 합계: 100 평균: 5 2차원 배열은 행과 열로 구성되어 있..

2차원 배열

1. 특징 - 자료형이 같은 1차원 배열의 묶음이다. - 배열 안에 다른 배열이 존재한다. - 할당된 공간마다 인덱스 번호 2개가 부여된다. - 앞의 번호는 행, 뒤의 번호는 열이며, '[1][2]'(1열에 2행) 이처럼 표현한다. 2. 선언과 할당 및 초기화 (1) 선언 자료형[][] 배열명; // 대부분 이 형태를 쓴다. 자료형[] 배열명[]; 자료형 배열명[][]; (2) 할당 자료형[][] 배열명 = new 자료형[행 크기][열 크기]; 자료형[] 배열명[] = new 자료형[행 크기][열 크기]; 자료형 배열명[][] = new 자료형[행 크기][열 크기]; int[][] arr = new int[1][2]; int arr[][] = new int[1][2]; (3) 초기화 ① 인덱스를 이용한 ..

주민등록번호 뒷자리 첫 번째 숫자 이후로는 '*' 표시하고 출력하기

단, 원본 배열은 '*' 표시 없이 복사 배열로 변경하여 출력한다. public void personID() { // Scanner로 입력 받기 Scanner sc = new Scanner(System.in); System.out.println("하이픈(-)을 포함하여 주민등록번호를 입력하세요."); String num = sc.nextLine(); // 하이픈(-) 포함 숫자 입력이므로 문자열 타입 char arr = new char[14] // 주민등록번호는 하이픈 포함 14자리 for(int i = 0; i < arr.length; i++) { // .charAt() : String으로 저장된 문자열 중 한 글자만 선택해서 char 타입으로 변환 arr[i] = num.charAt(i); } cha..

문자열을 입력 받아 배열에 각 철자를 저장하고, 철자의 개수를 출력하기

public void text() { // Scanner로 입력값 받기 Scanner sc = new Scanner(System.in); System.out.println("문자열을 입력하시오."); String word = sc.nextLine(); // String 타입이므로 .nextLine()을 사용 // 각 철자를 하나씩 저장해야 하므로 char 배열을 사용 // 입력값에 따라 문자열의 길이가 달라지므로 .length를 사용 char[] arr = new char[word.length()]; for(int i = 0; i < word.length; i++) { // 문자 "배열"의 i번째 = 문자열의 i번째에 있는 값 arr[i] = word.charAt(i); // 마지막 문자가 출력될 때 '..

사용자의 입력값이 배열에 있거나 없을 때 값을 출력하기

어플로 어느 가게의 음식을 주문하려는데 이런 음식도 있는지 궁금해서 검색해봐야겠다. "메뉴를 검색하세요." 이때, 입력한 메뉴가 배열에 있으면 "OOO을(를) 주문하시겠습니까?", 없으면 "OOO은(는)없는 메뉴입니다."를 출력한다. public void restaurant() { // 식당에 있는 메뉴를 배열로 초기화 String[] menu = {"떡볶이", "돈가스", "볶음밥", "라면", "떡국"}; Scanner sc = new Scanner(System.in); // 입력값을 받기 위해 Scanner 사용 System.out.println("메뉴를 입력하세요."); String question = sc.nextLine(); // String 타입이므로 nextLine()으로. // 반복문을 ..

배열(Array) - 선언과 할당 및 초기화, 복사

1. 특징  - 같은 자료형의 변수를 하나로 묶는다. 즉, 한 공간에 여러 개의 값을 저장할 수 있다.      cf) 변수: 한 공간의 하나의 값만 저장할 수 있다.  - 배열의 각 인덱스(index)에 값을 저장할 수 있다.      ex) int[] : 각 인덱스의 크기는 4 byte           double[] : 각 인덱스의 크기는 8 byte  - 배열은 저장된 값마다 인덱스 번호가 0부터 시작된다.   2. 배열의 선언과 할당, 초기화 (1) 배열의 선언   ① 표현법     - 자료형[] 배열명;       자료형 배열명[]; (이 표현은 권장하지 않음)    ② 예시     - int[] arr       int arr[]     - double[] arr       double a..

for문으로 공차를 만들어 입력값에 공차를 더한 값 출력하기

단, 출력될 숫자는 총 8개로 한다. 그리고 개행 없이 일렬로 나열되게 한다. //입력값을 받아야 하므로 Scanner를 사용한다. Scanner sc = new Scanner(System.in); System.out.println("먼저 시작값을 입력해주세요."); //시작값 입력 받기 int start = sc.nextInt(); //시작값은 변수 start System.out.println("원하는 공차값을 입력해주세요."); //공차값 입력 받기 int gong = sc,nextInt(); //공차값은 변수 gong for(int i = 0; i < 8; i++) { System.out.print(start + " "); //start가 시작점이므로 start를 먼저 출력해야함 start += g..