본문 바로가기

Java

[자바] enum 열거형에 대해서 알아보자! JAVA 열거형 많이 들어보셨을 겁니다. 열거형(enum)은 클래스처럼 선언해서 정해진 값만 사용할 수 있도록 제한할때 사용이 되어지는데요. 이때문에 열거형을 사용하게 되면 잘못된 데이터가 사용되어질 가능성을 줄일 수 있습니다. 만일 사용하려고 코드에서 시도한다면 컴파일 오류가 나겠죠. 일단 열거형의 형식을 시작으로 천천히 설명하겠습니다. 열거형은 일단 여러방식으로 작성할 수 있는데요. 크게는 클래스 내·외부로 나누어집니다. [클래스 외부] enum Day {MON, TUE, WED, THU, FRI, SAT, SUN} class DayTest{ public static void main(String[] args){ ...... } } [클래스 내부] class DayTest{ enum Day {MON,.. 더보기
[자바] 식별자에 대해서 알아보자. JAVA 변수에 식별자를 사용할 때 몇가지 규칙이 있는데요. 이는 작명 규칙이라 해서 클래스 명이라든지, 변수명, 메서드 등의 이름을 줄때 몇가지 방법으로 만드는 것을 의미합니다. 물론, 이를 따르지 않을때에는 오류가 나게 됩니다. 작명규칙은 다음과 같습니다. 1. 유니코드 문자를 사용해야 한다. 2. 처음에 숫자가 올 수 없으며, 문자나 화폐기호($), 밑줄(_)을 사용해서 시작할 수 있다.(이후는 상관없음) 3. 화폐기호($), 밑줄(_)을 제외한 특수문자는 사용할 수 없다. 3. 식별자의 길이는 제한이 없다. 4. 자바의 키워드는 사용할 수 없다. 5. 식별자의 경우, 대소문자를 구분한다. ex)test와 Test는 다른 식별자입니다. 자바 키워드의 경우 소문자로 시작하며, 다음과 같습니다. abs.. 더보기
[자바소스] 약수, 공약수, 최대공약수 구하는 프로그램 1. 소스 설명 약수, 공약수, 최대공약수 를 구하는 프로그램입니다. 메인에 메뉴를 구성했구요. while문, for문, switch, if문 등을 다양하게 이용하였으며, 각 수를 구하는 공식들은 메소드를 따로 구성했습니다. 그리고 마지막에 print 메소드를 넣어서 약수와 공약수는 배열로 반환이 되는데, 이를 간단히 출력할 수 있도록 구성했습니다. 소스를 보시게 되면 배열의 사이즈를 구성하는 구문이 있는데 이것 또한 다른 메소드로 구현 가능하겠고, ArrayList와 Iterator(반복자) 등등을 이용해서 다음 소스를 작성할 수도 있겠습니다. 참고로 결과문에 \b\b가 나올자리에 이상한 문자료 표시되는 것은 이클립스 오류로, 커맨드창으로 들어가셔서 한다면 제대로된 결과를 보실 수 있을겁니다. 2. 소.. 더보기
[자바] 반복문 while에 대해서 알아보자! 지난글 for 반복문에 이어서 while 반복문입니다. for문을 참고하실 분들은 다음 링크를 따라 가시길 바랍니다. for 반복문 글 확인하기 for 반복문과는 동일한 기능을 하는 while문. 일단 형식을 살펴보도록 합니다. while(조건식){ 명령문 } 역시 조건식이 '참'일 경우에만 해당 명령문이 실행 되는데요, for문과의 형식상 큰 차이점으로는, 1. 초기값이 없습니다. 2. 증감식이 없습니다. 단지 이 두가지 입니다. 그렇다면 왜 for문과 while문을 나누어져 쓰는 걸까요? 사실 제가 배울때도 그랬고 책들을 봐도 그렇고 이 for문과 while문의 사용에 있어서 직접적인 설명은 따로 없는데요. 그것은 기능이 거의 동일 하기 때문입니다. 그래도 자바를 오래 접하다 보면 이 상황에서는 wh.. 더보기
[자바] 반복문 for에 대해 알아보자! 어느 반복적인 행동을 해야 할때, 똑같은 명령문을 여러번 써야 할까요? 가령, 우리가 어떤 문자나 문장을 화면에 10000번 써야 된다고 가정합시다. 그렇다면 우리는 출력문 System.out.print("안녕하세요") 을 10000 적기 위해서는 다음과 같이 출력문을 소스에다가 10000번 적어줘야 할까요? public class Test1{ public static void main(String[] args){ System.out.println("안녕하세요"); System.out.println("안녕하세요"); System.out.println("안녕하세요"); System.out.println("안녕하세요"); System.out.println("안녕하세요"); System.out.println(.. 더보기
[자바소스] 3의 배수인지 확인하는 프로그램 1. 소스 설명 Scanner를 이용한 숫자 입력이 가능한 3의 배수 확인 프로그램 입니다. 조건문을 통해 나머지 연산자인 %를 이용해서 3의 배수를 판별하였습니다. 즉, 나머지가 0이 나오면 3의 배수이고, 그 이외의 값 1,2가 나온다면 3의 배수가 아닌것으로 판별합니다. 2. 소스 : Test.java 파일입니다. import java.util.Scanner; public class Test{ public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.print("3의 배수인지 아닌지 확인하는 프로그램입니다."); System.out.print("확인하려는 수를 입력하세요 : "); int a=inp.. 더보기
[자바] 조건문 if~else 에 대해 알아보자! 이번에 알아볼 것은 프로그래밍에 있어서 행동 설정을 해줄 수 있는 조건문이 되겠습니다. 이 조건문을 통해서 우리는 자바에게 다양한 명령을 할 수 있는데요, 이를테면, 어떤 특정한 조건에 해당될때만 정해진 동작을 행하도록 할 수 있습니다. 반면에 못하게 할 수도 있죠. 그 조건문에 쓰이게 되는 것이 바로 if ~ else 문입니다. 영어식 표현으로 한다면, "만약 ~ 한다면~(if) 그렇지 않으면~(else) " 이 되겠습니다. 우선 if문의 구조를 보겠습니다. public class Test{ public static void main(String[] args){ if(조건){ 명령문1 } else{ 명령문2 } } } 위와 같이 if ~ else문의 구성이 되겠습니다. 우선 if 문에 조건에 부합이 된.. 더보기
[자바소스] 성적 확인 프로그램 1. 소스 설명 switch() 문을 이용한 성적 확인 프로그램입니다. 점수를 넣게 되면 +,0 성적까지 알수 있도록 작성하였습니다. 2.소스 : import java.util.Scanner; public class Print { public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.print("성적을 입력하세요 : "); float point=input.nextFloat(); System.out.printf("당신의 성적은 %s 입니다.", grade(point)); } private static String grade(float point){ char plus=plus(point); int gra.. 더보기
[자바소스] 피보나치 수열 방법2(재귀함수) 1. 소스 설명 방법 1에 이은 방법 2입니다. 방법 2는 재귀를 사용해서 나타냈습니다. 2.소스 : Print.java 입니다. import java.util.Scanner; public class Print { public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.print("몇번째까지 결과를 보고싶나요? : "); int number=input.nextInt(); for(int i=1; i 더보기
[자바소스] 피보나치 수열 방법1(반복문) 1. 소스 설명 피보나치 수열 입니다. 보통 피보나치 수열은 재귀 즉, Recursive를 써서 하는게 보통인데요. 저는 그냥 세개의 변수를 써서 피보나치 수열을 보여봤습니다. 방식은 동일하구요. 다음 소스에서 재귀를 이용한 피보나치 수열을 구현해볼게요. 이 방식 외에도 다른방식으로도 만들수 있겠습니다. (그저 참조만 하시길 바랄게요.) 밑에 두소스는 같은 결과를 내구요. 다만 해석상의 차이에서 저렇게 할 수 있습니다. 어차피 피보나치 수열의 첫번째 항은 1로 시작하니까요. 2.소스 : import java.util.Scanner; public class Print { public static void main(String[] args){ Scanner input = new Scanner(System.i.. 더보기