본문 바로가기

WINK-(Web & App)/JAVA 스터디

[2024-2 Java 스터디] 김규현 #1주차

반응형

01. 자바란 무엇인가?

 

Java란 무엇인가?

- 1995년에 발표된 객체 지향 프로그래밍 언어이다. (객체 지향 언어란 프로그래밍의 주요 개념을 객체로 구조화하고 객체 간의 상호작용을 통해 문제를 해결하는 방식의 프로그래밍 패러다임을 지원하는 언어이다.)

- Java를 통해 웹 프로그래밍, 안드로이드 애플리케이션, 개임 개발, 데이터베이스 처리등을 할 수 있다.

- Java는 고급 언어에 들어 있는 여러 요소 중에서 불필요하다고 판단되는 부분을 모두 제거했기 때문에 간단함이 특징이나 높은 성능을 요구하는 프로젝트를 실행하기에 부적합하다.

- Java는 인터프리터 언어로서 코드를 한 줄씩 작성하고 실행하여 결과를 바로 확인할 수 있다.


 

02. 자바 시작하기

Java의 구조

 

 

자바 코드 예

public class Sample {
    public static void main(String[] args) {
        System.out.println("Wink");
    }
}

자바 코드의 가장 바깥쪽 영역은 클래스 블록이다. 단, 클래스명과 소스 파일의 이름이 같아야한다.

(예의 경우 파일명 = Sample)  

클래스 블록 안에 있는 블록이 메서드 블록으로 예의 경우 메서드의 이름은 main이다.

메소드 블록 안에 있는 블록이 명령문으로 예의 경우 괄호 안에 있는 문장을 출력하라는 명령을 하고 있다.

 

변수

변수를 설정하려면 변수의 자료형을 앞에 쓰고 그 뒤에 변수를 쓰면 된다.

단, 변수명은 숫자로 시작이 불가능하며 특수문자 및 자바키워드는 변수 설정이 불가능하다.

변수 선언동시에 값을 집어넣을 수도 있다.(단, 넣고자 하는 변수 자료형과 일치해야 한다.)

int kmu; //kmu라는 변수 선언 및 자료형은 int
String a = "wink" ; // a라는 변수 선언, 값 대입

 

이름 짓기 규칙

클래스명 명사이고 대문자로 시작한다.또한 여러 개의 단어를 조합하여 만들 경우 각 단어의 첫 글자는 대문자여야 한다.
메서드명 동사이고 소문자로 시작한다.
변수명 간결하면서 의미가 있어야한다. 순서를 의미하고 임시로 쓰이는 정수명도 있다

 

주석

주석의 처음과 끝을 /*,*/로 표현하는 블록 주석과 한 줄을 주석처리하는 // 라인주석이 있다.


 

03. 자바의 기초  - 자료형

 

숫자 자료형

 

정수

자료형 표현범위
int -2147483648 ~ 2147483647
long -9223372036854775808 ~ 9223372036854775807

 

정수를 나타내는 두 자료형 int, long은 표현범위에 있어 차이를 보이고 long을 사용할 때는 접미사로 L혹은 l을 붙어야한다.

 

int myage = 21;
long countOfStar = 8764827384923849L;

 

실수

자료형 표현범위
float -3.4 x 10**38 ~ 3.4 x 10**38
double -1.7 x 10**308 ~ 1.7 x 10**308

 

실수를 나타내는 두 자료형 float, double은 표현범위에 있어 차이를 보이고 float를 사용할 떄는 접미사로 F혹은 f를 붙여야한다.

float pi = 3.14F;
double morePi = 3.14159265358979323846;

 

※ 정수와 실수 자료형이 나뉘는 이유?

메모리 효율성과 다양한 범위의 숫자를 처리하기 위함이다.

자료형 int의 경우 크기가 32비트 (4바이트)이며 long의 경우 64비트 (8바이트)이다.


 

불 자료형

참(true) 또는 거짓(false)의 값을 갖는 자료형을 불(boolean) 자료형이라고 한다.

boolean isSuccess = true;
boolean isTest = false;

 


 

문자 자료형

문자 자료형은 char을 이용한다.

char a1 = 'a';  // 문자로 표현
char a2 = 97;  // 아스키코드로 표현
char a3 = '\u0061';  // 유니코드로 표현

System.out.println(a1);  // a 출력
System.out.println(a2);  // a 출력
System.out.println(a3);  // a 출력

 

변수에 값을 집어넣을때 ''로 감싸 문자로 표현하거나 아스키코드, 유니코드로 표현가능하다.


 

문자열 자료형

문자열 자료형은 String을 이용한다.

String a = "wink";  // 문자열의 앞과 뒤는 쌍따옴표("")로 감싸야 한다.
String b = "kmu";
String c = "2024";

 

new 키워드

Sring a = new String("kyuhyun")처럼 new키워드를 통해서 변수를 만들 수 도 있다.

하지만 new키워드는 객체를 만들기 때문에 가급적 가독성이 좋고 컴파일할 때 최적환된 리터럴 표기방식을 따르는 것이 좋다.

 

 

문자열 내장 메서드

equals  equals 메서드는 문자열 2개가 같은지를 비교하여 결괏값을 리턴한다. 만약 equals 대신에 == 을 사용하면 비교하고자하는 대상이 같은 객체인지를 판단하기 때문에 결과가 달라질 수 있다. 
indexOf indexOf는 문자열에서 특정 문자열이 시작되는 위치(인덱스값)를 리턴한다. 

contains

contains 메서드는 문자열에서 특정 문자열이 포함되어 있는지 여부를 리턴한다.

charAt

charAt 메서드는 문자열에서 특정 위치의 문자를 리턴한다. Hello Java 문자열에서 J는 여섯번째 인덱스에 위치한 문자이다. 인덱스 6으로 문자 J를 리턴받으려면 다음과 같이 charAt을 사용한다.

replaceAll

replaceAll 메서드는 문자열에서 특정 문자열을 다른 문자열로 바꿀 때 사용한다.

substring

substring 메서드는 문자열에서 특정 문자열을 뽑아낼 때 사용한다.

toUpperCase

toUpperCase 메서드는 문자열을 모두 대문자로 변경할 때 사용한다.

split

split 메서드는 문자열을 특정한 구분자로 나누어 문자열 배열로 리턴한다.

 


 

문자열 포매팅

 

문자열 안의 특정한 값을 바꿀 수 있게 해주는 것

System.out.println(String.format("I eat %d apples.", 3));  // "I eat 3 apples." 출력
System.out.println(String.format("I eat %s apples.", "five"));  // "I eat five apples." 출력
int number = 3;
System.out.println(String.format("I eat %d apples.", number));  // "I eat 3 apples." 출력
int number = 10;
String day = "three";
System.out.println(String.format("I ate %d apples. so I was sick for %s days.", number, day));

 

문자열안에 숫자, 문자열을 대입할 수 있으며 변수 설정후 변수를 넣거나 2개 이상 집어 넣을 수도 있다.


 

StringBuffer

StringBuffer는 문자열을 추가하거나 변경할 때 주로 사용하는 자료형이다.

append 메서드를 사용하여 문자열을 추가해 나갈 수 있다.

toString()을 사용하면 String 자료형으로 변경할 수 있다.

insert 메서드는 특정 위치에 원하는 문자열을 삽입할 수 있다.

substring은 객체의 시작 위치에서 끝 위치까지 문자를 뽑아낸다.


 

배열

 

int자료형의 배열은 int[]으로 String 자료형의 배열은 String[]으로 나타낸다.

int[] odds = {1, 3, 5, 7, 9};
String[] weeks = {"월", "화", "수", "목", "금", "토", "일"};

 

배열의 길이를 먼저 설정하고 값을 넣는 방법도있다.

String[] weeks = new String[7];
weeks[0] = "월";
weeks[1] = "화";
weeks[2] = "수";
weeks[3] = "목";
weeks[4] = "금";
weeks[5] = "토";
weeks[6] = "일";

 


 

리스트

 

ArrayList는 리스트 자료형에서 가장 일반적으로 사용되는 자료형이다.

import java.util.ArrayList;

public class Sample {
    public static void main(String[] args) {
        ArrayList pitches = new ArrayList();
        pitches.add("138");
        pitches.add("129");
        pitches.add("142");
    }
}

 

add 메서드를 사용해 pitches라는 리스트안에 요소들을 추가할 수 있다.

혹은 add(위치, "요소")를 사용하여 리스트 안에 원하는 위치에다가 요소를 추가할 수 있다.

get 메서드를 사용해 특정 인덱스 값을 추출할 수 있다.

contains 메서드를 사용해 리스트안에 리스트 항목안에 원하는 값이 있는지 boolen으로 리턴할 수 잇다.

remove 메서드를 사용해 원하는 값을 삭제할 수 있다.

반응형