Java, intelliJ 문법 정리
public class Main {
public static void main(String[] args) {
}
}
단축어 : psvm, sout ,serr
단축키 : Ctrl + Shift + Enter : if문, for문,, 괄호 자동완성
Alt + Enter : 에러 대안 옵션 표시
1. 자료형
(1) 기본 자료형
- 숫자
short s = 1;
int a = 3; // 정수형 변수 선언
long b = 1234567890L; // Long 정수형 변수 선언
float c = 5.5F; // float 실수형 변수 선언
double d = 9.12345678901234567890d; // double 실수형 변수 선언
// 다음처럼 각 자료형의 MAX, MIN 값을 가져올 수 있습니다.
System.out.println(Short.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
- 문자
char alphabet = 'A'; // 문자형 변수 선언
- 논리/바이트
boolean fact = true; // 논리형 변수는 true, false의 값을 가진다.
byte data = 'd';
System.out.println(data); // 알파벳 d는 ASCII code 에서 십진법으로 100
(2) 참조 자료형/ 배열
참조 자료형 (Reference Type) 은 기본 자료형을 제외한 모두.
- 배열
int[] intArray = new int[] {1,2,3,4,5};
String[] name = {"asd","qwe","zxc")
int[] intEmptyArray = new int[5]; // int의 5자리 배열 선언
System.out.println(Arrays.toString(intEmptyArray)); // int의 default 값 0으로 채워짐
int[] intArray = new int[] {1,2,3,4,5}; // int 배열을 선언과 동시에 초기화
System.out.println(Arrays.toString(intArray));
String[] stringEmptyArray = new String[5]; // 참조자료형 String의 5자리 배열 선언
System.out.println(Arrays.toString(stringEmptyArray)); // 참조자료형은 값이 없을 경우 null(아무것도 없다) 이라는 표현으로 표시
String[] months = {"1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"};
System.out.println(Arrays.toString(months));
- 문자형과 숫자를 출력할 때
가운데 따옴표로 이어주면 된다.
System.out.println(kk + "" +num);
2. 연산자
산술연산자 : + - * / %
대입연산자 : =, +=, -=, *=, /=, %/
논리연산자 : ==, != -> true, false
관계연산자 : &&, ||, !
3. 조건문
- if 문
if (조건식){
실행 코드}
else if (조건식){
실행 코드}
else{
실행 코드}
- switch문
switch (입력 변수){
case 입력값1 : 실행 구문
break;
case 입력값2 : 실행 구문
break;
default: 기본 실행 구문
break;
}
- 삼항연산자
(조건식) ? A : B
'?'를 기준으로 조건식이 true일 경우에는 A 코드를, false일 경우에는 B 코드를 수행
int a = 5;
String reuslt = (a < 10) ? "10보다 작습니다." : "10보다 큽니다.";
System.out.println(reuslt);
예제 ) 조건문 퀴즈 1: 입력받은 점수가 무슨 등급인지 출력해보세요.
(100~91점 : A등급 , 90점~81점 : B등급 , 80점~71점 : C등급 , 그 외의 점수 : F등급)
import java.util.Scanner;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int score = sc.nextInt();
if (score <= 100 && score > 90) {
System.out.println("A등급입니다.");
} else if (score <= 90 && score > 80) {
System.out.println("B등급입니다.");
} else if (score <= 80 && score > 70) {
System.out.println("C등급입니다.");
} else {
System.out.println("F등급입니다.");
}
}
}
4. 반복문
- for문
for(초기값 ; 조건식 ; 증감식){
실행 코드 블럭
}
for (int i = 0; i < 10; i++) {
sum += (i + 1);
}
for-each 문 : 리스트를 하나씩 대입하는 for 문
String[] days = {"Monday", "Tuesday", "Wednesday"};
for (String day : days) {
System.out.println(day);
}
- while 문
while(조건식){
실행 코드 블럭
}
int i = 0;
int sum = 0;
while (i < 10) {
sum += i + 1;
i += 1;
}
- do~while 문
do{ } 코드를 실행한 후 while( ) 조건과 일치하면 반복, 일치하지 않는다면 멈춘다.
int i = 1;
int result = 0;
do {
result += i;
i += 1;
} while (i < 2);
예제 -1) 1부터 100까지의 합
int result = 0;
for (int i = 0; i < 100; i++) {
result += i+1;
}
예제 -2) 1부터 30까지 홀수의 합과 짝수의 합을 구하고 각각 출력
int sumOdd = 0;
int sumEven = 0;
for (int i = 0; i <= 30; i++) {
if (i % 2 == 0) {
sumEven += i;
} else {
sumOdd += i;
}
}
System.out.println(sumOdd);
System.out.println(sumEven);
5. 클래스(Class)
- 인스턴스
인스턴스 : 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다.
class Phone {
String model;
String color;
int price;
}
public class Main {
public static void main(String[] args) {
Phone galaxy = new Phone();
galaxy.model = "Galaxy10 ";
galaxy.color = "Black";
galaxy.price = 100;
System.out.println("잡스는 " + galaxy.model + galaxy.color + "색상을 " + galaxy.price + "만원에 샀다.");
}
}
- 메소드
클래스가 포함하고 있는 '함수' 를 메소드라 한다.
아래와 같은 형식으로 작성
반환타입 메소드이름 (타입 변수명,타입 변수명, ...){
수행되어야 할 코드
return result;
}
class Phone {
int add(int x, int y) {
int result = x + y;
return result;
}
}
- 생성자
생성자는 인스턴스가 생성될 때 사용되는 '인스턴스 초기화 메소드'이다.
생성자 형식
클래스이름 (타입 변수명, 타입 변수명, ...){
인스턴스 생성 될 때에 수행하여할 코드
변수의 초기화 코드
}
"단축키 Alt + insert -> constructor -> 전부 선택 -> ok "로 자동 생성 가능
> 생성자에서 사용된 this는 생성된 객체 자신을 가리키며
생성자의 매개변수의 값을 객체의 해당하는 데이터에 넣어주게 됩니다.
> 변수의 선언부나 생성자를 통해서 초기화를 해주지 않는다면, 기본값(default value)를 가집니다.
- 상속
ㅓㅏㅘㅓㅗ
'Java, IntelliJ > JAVA' 카테고리의 다른 글
Java split, substring 문자열 자르기 (0) | 2021.06.24 |
---|---|
JAVA 별찍기 문제 (0) | 2021.06.24 |
JAVA Class 클래스 정리 (0) | 2021.06.24 |
Java 내용 총 정리 (0) | 2021.06.23 |
[Java] IntelliJ IDEA 자주 쓰는 단축키 모음, 단축구문 모음 (0) | 2021.06.03 |
댓글