전체 글 422

Chapter 04 조건문과 반복문

1. 조건문 - if, switch - 처리할 경우의 수가 많으면 if 보다 switch가 효율적이지만 if 보다 제약이 많다. 1.1 if문 - 결과가 참인 조건식을 만날 때까지 첫 번째 조건식부터 순서대로 평가한다. package javaStudy; import java.util.*; public class FlowEx2 { public static void main(String[] args) { int input; System.out.print("숫자를 하나 입력하세요.>"); Scanner scanner = new Scanner(System.in); String tmp = scanner.nextLine(); // 화면 통해 입력받은 내용을 tmp에 저장 input = Integer.parseInt..

Java/Java의 정석 2022.02.19

Chapter 03 연산자(Operator)

1. 연산자 1.4 연산자의 우선순위와 결합 규칙 1) 순서: 산술 -> 비교 -> 논리 -> 대입 2) 단항(1) > 이항(2) > 삼항(3). (단항 연산자의 우선순위가 이항 연산자보다 높다.) 3) 단항 연산자(++ -- + - ~ ! type)와 대입 연산자를 제외한 모든 연산의 진핸 방향은 왼쪽에서 오른쪽이다. -> 대입 연산자(=, +=, -=, *=, /-, %=,... ) Note) 관계 연산자 (결과로 true/ false 반환) - >. >=, 대소구분 없음 5. 논리 연산자 5.1 논리 연산자 ( || (OR 결합), && (AND 결합), ! ) - true, false를 결과로 얻는다. 5.2 비트 연산자 ( &(AND 연산자), |(OR 연산자), ^(XOR 연산자), ~, ) ..

Java/Java의 정석 2022.02.19

Chapter 02 변수(Variable)

1. 변수(Variable) 1.1 변수란? Def) 변수: 단 하나의 값을 저장할 수 있는 메모리상의 공간을 의미한다. (프로그래밍 상에서) - 수학에서의 변수는 변하는 수라고 정의한다. 1) 멤버 변수 (membered variables, 소속 변수, 클래스 변수, 필드, 속성 변수) - 클래스 내부에 소속된 변수 - 주로 클래스 내부의 메서드들에 의해 사용된다. - 선언만 되어 있고 명시적으로 초기화하지 않으면 기본값이 적용된다. -> 기본값(boolean: false, char/ byte/ short/ int/ long/ float/ double: 0, String, Date: null ) 2) 지역 변수 (local variables) - 클래스 내의 메서드내부에서 선언되어서 사용되는 변수 - ..

Java/Java의 정석 2022.02.17

Chapter 01 자바를 시작하기 전에

1. 자바(Java Programming Language) 1.1 자바란? - 자바는 선에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어이다. - 자바의 중요한 특징은 운영체제(Operating System, 플랫폼)에 독립적이라는 것이다. - 자바는 풍부한 클래스 라이브러리(Java API)를 통해 프로그래밍에 필요한 요소를 기본적으로 제공한다. - 이를 잘 활용하면 강력한 기능의 자바 프로그램을 작성할 수 있다. - 자바는 꾸준히 성능 개선하며 새로운 버전을 발표한다. - 모바일(J2ME)이나 대규모 기업환경(J2EE), XML.. 등 최신기술을 지원하며 활동 영역을 넓히고 있다. 1.2 자바의 역사 - 1991년 썬의 엔지니어들에 의해 고안된 언어 오크(Oak)에서 시작 되..

Java/Java의 정석 2022.02.15

Chapter 10-63 하샤드 수

Ex) 양의 정수 x가 하샤드 수라면 x의 자릿수 합으로 x가 나눠줘야 한다. 예를 들어 18의 자릿수의 합은1 + 8 =9이고 18은 9로 나눠 떨어지므로 하샤드 수이다. Harshad함수는 양의 정수 n을 매개 변수로 받는다. 입력받은 n이 하샤드 수인지 아닌지 판단하는 함수를 완성하라. package javaStudy; public class HarshadNumber { public boolean isHarshad(int num) { int su = num; int sum = 0; boolean isHarshad = false; while( su > 0) { sum += su % 10; su = su / 10; } if(num % sum == 0) isHarshad = true; return isH..

Chapter 10-62 최댓값과 최솟값

Ex) getMinMaxString 메서드는 String형 변수 str을 매개변수로 입력받는다. str에는 공백으로 구분한 숫자들이 저장되어 있다. str에 나타나는 숫자 중 최솟값과 최댓값을 찾아 이를 "최솟값 최댓값" 형태의 String을 반환하는 메서드를 완성하라. 예를 들어 str이 "1 2 3 4"라면 "1 4"를 반환하고 "-1 -2 -3 -4"라면 "-4 -1"을 반환한다. package javaStudy; public class GetMinMaxString { public String getMinMaxString(String str) { String [] strArr = str.split(" "); int maxValue = Integer.parseInt(strArr[0]); int min..

Chapter 10-61 정수 내림차순으로 배치하기

Ex) reverseInt 메서그는 int형 n을 매개변수로 입력받는다. n에 나타나는 숫자를 큰 것부터 작은 순으로 정렬한 새로운 정수를 반환하라. 예를 들어 n이 118372 -> 873211을 반환하라. package javaStudy; public class ReberseInt { public int reberseInt(int n) { int i = 1; //(1) int count = 0; while (i 0) { arr[arrCount] = n / i; n = n % i; i = i / 10; ++arrCount; } //(4) int temp = -1; for(int i2 = 0 ; i2 < arr.length; ++i2) { for( int j = i2 + 1; j < arr.length;..

Chapter 10-59 문자열을 내림차순으로 배치하기

Ex) reverseStr메서드는 String형 변수 str을 매개변수로 입력 받는다. str에 나타나는 문자를 큰 것부터 작은 순으로 정렬해 새로운 String을 반환하라. str은 영문 대소문자로만 구성됐으며 대문자는 소문자보다 작은 것으로 간주한다. 예를 들어 str이; "Zbcdefg"면 "gfedcbZ"를 반환한다. package javaStudy; public class ReverseStr { public String reverseStr(String str) { char [] chars = str.toCharArray(); char temp; for(int i = 0;i < chars.length; ++i) { for(int j = i+ 1; j < chars.length; ++j) { if(..

Chapter 10-58 서울에서 김서방 찾기

Ex) findKim 함수는 String형 배열 seoul을 매개변수로 받습니다. seoul의 요소 중 'Kim'의 위치 x를 찾아 "김 서방은 x에 있다"는 String을 반환하라. seoul에 'Kim'은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없다. package javaStudy; public class FindKim { public String findKim(String[] seoul) { int x = 0; for(int i = 0; i < seoul.length; ++i) { if(seoul[i].equals("Kim")){ x = i; } } return "김 서방은 " + x +"에 있다."; } public static void main(String[] args) { Fin..