목록Java (48)
미누에요

Java 는 기본적으로 객체지향 프로그래밍 언어이다. 객체지향 프로그래밍(OOP, Object-Oriented Programming) 클래스라는 묶음 안에 해당 프로그램의 속성(변수)와 기능(함수)를 넣어두고 사용하는 프로그래밍 방식이다. 강아지라는 동물에 대해서 특징을 생각해 보자. 속성, 즉 수치로 나타낼 수 있는 값은 키, 배고픈 정도, 이름 등등이 있을 것이고, 할 수 있는 행동(기능)은 짖기, 소개하기, 밥달라하기가 있을 것이다. 아래 코드를 보자, 우리가 기본적으로 사용하는 방식인 절차지향 프로그래밍이다. package test; public class DogWithoutOop { public static void main(String[] args) { int height = 50; Strin..

개인정보 중 일부를 비공개로 전환하는 프로그램을 작성하시오. 조건 개인정보를 비공개로 전환하는 메소드 작성 하나의 메소드에서 모든 동작 처리 각 정보는 아래 위치부터 비공개 적용 이름 : 2번째 글자 (장영실) 주민등록번호 : 9번째 글자 (991234-1234567) 전화면호 : 10번째 글자 (010-1234-5678) 정답! package chap_06; public class _Quiz_06 { public static String getHiddenData(String perNum, int num){ String result = perNum.substring(0,num); for (int i = 0; i < perNum.length() - num; i++) { result = result + "*..

메소드 오버로딩이란 여러 개의 메소드를 중복하여 사용하는 것을 의미한다. 여기서 중복하여 사용한다는 것은 매개변수, 즉 파라미터의 형식이 다른 여러 메소드를 중복할 수 있다는 것이다. import java.math.BigInteger; import java.util.Scanner; public class test { public static void printUntill(int n) { for (int i = 1; i

아마 우리는 모두 "함수"라는 개념에 대하여 알고 있을 것이다. 어떤 값을 입력하면 연산을 하여 결과값을 출력하는 일련의 과정이 함수에서 이루어진다. 위 그림은 36이라는 입력값에 4를 더하여 40이라는 값을 출력하는 함수이다. 프로그래밍에서도 함수라는 개념을 사용하는데, 프로그래밍에서의 함수는 특정 기능들을 묶어둔 집합이라고 볼 수 있다. 예를들어 인사말을 출력하는 함수가 있다면, 그 함수는 인사말을 출력할 것이다. Java에서는 이 함수를 "메소드"라는 이름으로 사용한다. public class test { public static 함수의 자료형 함수이름 (매개변수) { 실행 코드 } } 함수의 기본적인 형태이다. public static 뒤에 함수의 자료형, 함수이름, 괄호 안에 매개변수를 적는 형..

문제 배열을 활용하여 쇼핑몰에서 구매 가능한 신발 사이즈 옵션을 출력하는 프로그램을 작성하시오. 조건 신발 사이즈는 250부터 295까지 5단위로 증가 신발 사이즈 수는 총 10가지 정답 public class test { public static void main(String[] args) { int[] sizeArray = new int[10]; for (int i = 0; i < sizeArray.length; i++) { sizeArray[i] = 250 + (5 * i); } for (int size : sizeArray) { System.out.println("사이즈 " + size + " (재고 있음)"); } } }

행렬을 배워본 적이 있는가 ? 요즘 교육과정에서는 배우지 않지만, 행렬은 수 또는 다항식 등을 직사각형 모양으로 배열한 것이다. 행렬의 각 값은 행렬의 i,j 로 나타낼 수 있다. 위 행렬의 이름이 A라고 할 때, 아래 사진처럼 각 위치별 값을 나타낼 수 있다. 사진을 보면, 가로 줄인 행(row)마다 앞의 수인 i 가 같고, 세로 줄인 열(column)마다 뒤의 수인 j가 같은 것을 알 수 있다. 다차원 배열이 행렬의 개념과 굉장히 비슷하다. 이전에 배웠던 배열(일차원 배열)은 가로로 긴 한줄짜리의 값 묶음이라면, 다차원 배열 중 이차원 배열은 행렬과 같이 2차원 상에 나타나지는 값들인 것이다. 컴퓨터는 인덱싱을 0부터 하므로, 2차원 배열의 각 위치를 나타내면 위와 같다. 우리는 이 2차원 배열을 J..

같은 자료형의 변수를 여러 개 사용할 때, 그 변수들이 비슷한 카테고리 상에 있다고 하면, 그 여러 변수들이 한꺼번에 묶여 있다면 더 편리하게 자료를 관리할 수 있을 것이다. public class test { public static void main(String[] args) { int scoreA = 89; int scoreB = 77; int scoreC = 93; } } 위의 코드는 세 학생의 점수를 나타내는 코드이다. int형의 변수 세 개로 데이터를 저장했다. public class test { public static void main(String[] args) { int[] score = new int[]{89, 77, 93}; } } 하지만 배열을 사용한다면 위처럼 간단하게 나타낼 수 ..

조건문을 활용하여 주차 요금 정산 프로그램을 작성하시오. 조건 주차요금은 시간당 4000원 (일일 최대 요금은 30000원) 경차 또는 장애인 차량은 최종 요금에서 50% 할인 주차요금 예시 일반 차량 5시간 주차 시 20000 원 경차 5시간 주차 시 10000원 장애인 차량 10시간 주차 시 15000원 실행결과 일반 차량 5시간 주차 시 20000원 경차 5시간 주차 시 10000원 장애인 차량 10시간 주차 시 15000원 코드 package chap_04; // 주차요금은 시간당 4000원 (일일 최대 요금은 30000원) // 경차 또는 장애인 차량은 최종 요금에서 50% 할인 // 일반 차량 5시간 주차 시 20000원 // 경차 5시간 주차 시 10000원 // 장애인 차량 10시간 주차 ..

break와 함께 반복문에서 많이 사용되는 것은 Continue문 이다. 앞서 설명했던 break문은 속해있는 반복문을 종료시키는 코드였다면, continue문은 반복문에서 딱 그 시점의 조건문을 넘겨버리는 코드이다. 예시를 통해 살펴보자. public class test { public static void main(String[] args) { for (int i = 0; i < 5; i++) { if (i==2){ continue; } System.out.println("for! #"+i); } } } 위에서 i가 5보다 작은 동안 5번 반복하는 반복문 안에 i가 2일 때 continue를 수행하게 되어있다. i가 2일 때, 프로그램은 continue를 만나서 아래의 출력문을 실행하지 않고 넘어간다..

break문은 속해 있는 반복문을 빠져나가는 데 사용됩니다. public class test { public static void main(String[] args) { int n = 7; for (int i = 0; i < n; i++) { System.out.println("M : 안녕!"); if(i==5){ System.out.println("W : 인사 좀 그만해."); break; } } System.out.println("M : 알겠어...."); } } 위 코드에서 for문안의 인사하는 출력문은 7번 반복출력되어야 합니다. 하지만 for문 내부의 if문에서 i가 5가 되는 순간, W의 말을 출력하고 break가 사용된 것을 확인할 수 있습니다. break를 사용하자 for문을 빠져나와 fo..