유디의 공간정보·개발일기
1. 0705_Java 개요, 문법 본문
* 자바스크립트
* 자바
* 코틀린
개발도구
- 이클립스
- 안드로이드 스튜디오
- 오라클 설치, 계정 생성
- Class의 main {} 으로 코드가 실행되는 원리
- Run as - 2 Java Application 실행 -> 콘솔창에 output
* 단축키 : alt + shift + X, J
- (), {}, [] 괄호는 쌍으로 맞추기
- 들여쓰기, 탭키
- 세미콜론(;)
- 대소문자 주의
1. 변수
System.out.println("출력하고 싶은 것");
System.out.println(변수);
출력 코드 -> 콘솔창에 출력이 됨
String name = "홍길동";
String mobile = "010-1234-1234";
문자열 코드 -> 변수에 이름을 붙이고 "" 안에 출력할 값(Value)을 입력
int age = 10;
int age;
age = 24;
//변수에 접근할 수 있다면 이렇게 적는다.
숫자열 코드 -> 변수에 이름을 붙이고 숫자를 입력
- 변수타입 : String, int, double, float 등
String("안녕");
//문자를 쓸 때 사용
int age = 24;
//정수를 쓸 때(소수점x)
//String으로 정수를 표현할 수는 있지만 크기가 다름
double height = 100.1;
//소수점 자료 사용
//경도, 위도 값도 처리함
float weight = 61.98f;
//double보다는 저장하는 크기가 더 작음
void sum()
//값이 없는 형태
String name = "이름 : " + "홍길동";
int age = 10 + 10;
문자의 경우 : +로 두개의 글씨를 붙여줌
숫자의 경우 : +로 두 숫자를 더해줌
String name1 = "홍길동";
System.out.println("이름 : " + name1);
String name2 = "이름 : " + "홍길동";
System.out.println(name2);
변수에 있는 값이 더해짐 (위 아래 입력방법은 다르지만 결과값은 같음)
[Test1]
public class Test1 {
public static void main(String[] args) {
System.out.println("안녕!");
String name = "홍길동";
System.out.println("이름 : " + name);
//글씨와 숫자를 +를 활용해 붙일 수 있다.
String mobile = "010-1234-1234";
System.out.println("안녕 나는" + name + "이야" + "내 전화번호는" + mobile + "이야");
int age = 24;
System.out.println("내 나이는" + age + "야");
//숫자에서 +는 숫자 더하기 이다.
int age2 = 10 + 10;
System.out.println(age2);
}
}
2. 함수
메서드, 어떤 기능이나 동작
- 기본적인 함수식
int a = 10;
int b = 10;
int result1 = a + b;
System.out.println("더하기 결과 : " + result1);
Static int add(int a, int b) {
return a + b;
}
- add 뒤의 () 안에 함수상자에 값이 들어갈 두 개의 구멍 값을 넣어줌
- 함수 상자의 결과 값에는 이름이 없고 크기만 명시
int : 정수
void : 값이 없을 때
- return : 값을 돌려주는(나타내는) 함수
* static의 경우에는 함수를 따로 빼서 계산한다.
결과값은 main에서 return된다.
[Test2]
public class Test2 {
public static void main(String[] args) {
int a = 1;
int b = 1;
int result1 = a + b;
System.out.println("1+1은?" + result1);
//더하기 함수 실행
int result2 = add(10,10);
System.out.println("더하기 결과 : " + result2);
//함수상자를 만들면 반복 가능
int result3 = add(20,20);
System.out.println("20+20은?" + result3);
}
static int add(int a, int b) {
return a + b;
}
}
3. Count
- 만약 1부터 10까지 더한 값을 얻고 싶다면,
[Test3]
int count = 0;
count = count + 1;
//count라는 변수에 1을 계속 더함
count = count + 2;
count = count + 3;
count = count + 4;
count = count + 5;
count = count + 6;
count = count + 7;
count = count + 8;
count = count + 9;
count = count + 10;
System.out.println("합계 : " + count);
- 그러나 코드를 간결하게 하는 게 좋고 만약 더 큰 숫자까지 더한다면 비효율적인 코드임
--> for 반복문 사용하기
int count1 = 0;
for (int i = 1; i<11; i++) {
//결과값에 i의 모든 값이 함께 출력된다.
System.out.println("i : " + i);
count1 = count1 + i;
}
System.out.println("합계 : " + count1);
* for( ① ; ② ; ③ ) { }
① int i = 0 //초기값
② i < 10 //조건에 맞는 동안 반복
③ i ++ 또는 i --
for (int i = 0; i < 10;) {
System.out.println("i: " +i);
}
-> 결과값이 계속 반복함 -> 메모리 차지가 많고 잘못 쓴 코드임
//메인함수에 실행값을 입력
public class Practice {
public static void main(String[] args) {
//실행값
int result = sum();
System.out.println("1~10까지의 합 : " + result);
}
static int sum() {
int count = 0;
for (int i = 1; i<11; i++) {
count = count + i;
}
return count;
}
}
[Test3]
public class Test3 {
public static void main(String[] args) {
int start = 1;
int end = 11;
int result1 = sum(start, end);
System.out.println("1~10까지 더하면 " + result1);
//위에서 이미 start와 end에 int형이라고 했기때문에 다시 안씀
start = 1;
end = 101;
int result2 = sum(start, end);
System.out.println("1~100까지 더하면 " + result2);
}
static int sum(int start, int end) {
int count = 0;
for (int i = start; i < end; i = i +1) {
count = count + i;
}
return count;
}
}
4. Class 만들기
- Class : 변수 여러 개를 하나로 묶은 것, 변수가 여러 개일 때 묶을 틀을 만들기 위한 목적, 같은 등급의 그룹
- 틀을 만들어두면 일일이 묶지 않아도 된다.
- 클래스는 main 함수 없음
- 클래스는 붕어빵을 찍어내는 틀과 같다
public class Fish {
String name;
int age;
}
[Test4] Class 실행하기
Fish fish1 = new Fish();
fish1.name = "니모";
fish1.age = 1;
System.out.println("첫째 붕어빵 이름은 " + fish1.name + "이고 나이는" + fish1.age + "이다");
- 숫자와 문자가 들어가기 때문에 변수의 크기를 모름 -> 임의로 설정 : 자료형(type)
- 자료형은 변수의 크기와 모양을 결정한다.
- Fish Class에 함수상자 넣기
int add(int a, int b){
return a + b;
}
- Test4에서 함수 실행하기
int result = fish1.add(1, 4);
System.out.println("니모의 가족은 " + result);
- Fish Class
void swim(){
System.out.println("붕어빵" + this.name + "는 수영을 좋아해요");
}
- this : 나 자신, class에서는 그 안에 있는 변수를 가져와 사용할 수 있다.
Fish fish1 = new Fish();
fish1.name = "니모";
fish1.swim();
- 클래스에서 swim은 void로 없기 때문에 이것만 실행됨
[Fish Class]
public class Fish {
//두 개의 변수상자
String name;
int age;
//함수상자
int add(int a, int b) {
return a + b;
}
void swim() {
System.out.println("붕어빵" + this.name + "는 수영을 한다.");
}
}
[Test4]
public class Test4 {
public static void main(Strint[] args) {
Fish fish1 = new Fish();
//변수값 출력
fish1.name = "니모";
fish1.age = 2;
System.out.println("물고기의 이름은 " + fish1.name + " 나이는 " + fish1.age);
//함수값 출력
int result = fish1.add(1, 2);
System.out.println("물고기 가족은 " + result + "마리다");
//void 출력
fish1.swim();
}
}
'JAVA' 카테고리의 다른 글
4. 0708_생성자함수, if문 (리뷰) (0) | 2021.10.23 |
---|---|
3. 0707_review (0) | 2021.10.20 |
2. 0706_생성자(Constructor), Getter and Setter, 상속 (0) | 2021.10.20 |
[JAVA] Collection : List, Set, Map (0) | 2021.08.13 |
[Java] Wrapper Class(래퍼 클래스) (0) | 2021.08.12 |