출처: https://bumcrush.tistory.com/182 [맑음때때로 여름]

ex) trim으로 공백을 제거해 준 후 isEmpty를 사용 > true

 

 

🎈 trim은 앞 뒤 공백만 제거해줄 뿐 가운데는 제거해주지 않는다.

public : 클래스의 안이든 바깥이든 어디에서나 이 main메소드가 호출될 수 있음을 뜻한다. 접근 제한자에 대한 자 세한 것은 문법 메뉴를 참고하시면 많은 정보를 얻을 수 있다.

 

static : mian()메소드가 메모리에 인스턴스되는 공간의 주소가 모두 똑같음을 나타냅니다.

프로그래밍을 처음 시작 하시는 분들이라면 이 static이라는 키워드의 기능에 대해 이해하기가 좀 어려울 것입니다. 지금부터 제가 설명하는 것을 자세히 읽어 보시면 왠만큼 이해는 될 것입니다. static키워드는 매번 자바 언어에서 객체들 이 생성되고 이용되는 과정에서 메모리의 기억 장소를 이용합니다. 매번 객체들이 생기고 저장되고 참조하는 과정들이 무진장 일어나죠. 그래서 메모리를 많이 잡아 먹게 됩니다. 이런 메모리 점유를 조금이나마 줄이고 수행 속도의 증가를 위해 static키워드를 지정함으로서 static으로 지정된 객체나 메소드에 대해서는 메모리의 똑 같은 자리(주소)를 계속해서 사용하므로 메모리의 낭비를 막을 수 있습니다. 그러나 주의하실 점은 이런 객체나 메소드는 정적으로 이용되므로 같은 static객체나 메소드에 의해 호출이 되며, 클래스의 초기 화시 맨 처음으로 메모리에 적재됩니다.


void : C언어나 C++언어를 해보신 분들이라면 지겹도록 많이 보았을 키워드지요. 자바에서 void의 기능은 이 메소드 여기에서는 main()메소드의 안에서 작업을 처리하고 main을 호출한 호출자에게 반환한(리턴값) 결과값이 아무 것도 없다는 것을 의미합니다.

 

main(String args[]) : main()메소드는 모든 자바 애플리케이션 프로그램에 꼭 들어가야 하는 문장이며, 캄파일하여 실행시킬 경우 자바 런타임 인터프리터가 제일 먼저 이 main()메소드를 찾아 실행을 하는 곳입니다. main() 메소드는 "String args[]"라는 한 개의 파라미터값을 갖도록 정의되어 있습니다. args는 실행시의 클래스에 전달되는 커맨드 라인 인자로서 String의 배열형으로 정의함으로서 여러개의 문자열을 받아들일 수 있습니다.

쉽게 말해, 자바 애플리케이션 프로그램을 자바 인터프리터(java)로 실행할 경우 실행 명령뒤에 문자 열을 인자로 줄 수 있는데 이것을 받아들이는 String형 배열입니다.

'memo' 카테고리의 다른 글

매개변수란? ( ) 안에 들어가는애들인듯  (0) 2020.10.14
string stringbuffer stringbuilder  (0) 2020.10.13
ArrayList 참고글  (0) 2020.10.12
이클립스 단축키  (0) 2020.10.07
p s v  (0) 2020.10.07
자바 이름 규칙  (0) 2020.10.05
아스키코드 / 아스키코드표  (0) 2020.09.29

 

지역변수 ex) for문안에 i

인스턴스 변수 ex) new 클래스();

클래스 변수 : 앞에 static / 인스턴스에 많이 사용하면 유용

 

 

 

 

- 클래스 변수 (static int)

- 인스턴스 변수 card c1 = new card();

 

 

 

void가 static void가 아니므로

card c1=new card(); 같은 인스턴스 변수를 사용하지 않고는 호출할 수 없다.

c1.play();는 사용가능

 

 

cv2= iv; 에러/ 클래스 변수는 인스턴스 변수를 사용할 수 없다.

프로그램 시행시 생성 순서는  cv(1) > cv2 (2)이기 때문에

iv는 객체를 생성( 어쩌구저쩌구 뉴 ()로 하는거)해야 사용할 수 있으므로

사용하고싶다면 static iv로 하거나 아랫줄처럼 static int cv2=new Membercall().iv 해야함

'JAVA > basic' 카테고리의 다른 글

변수의 초기화 / 초기화 블럭  (0) 2020.10.08
객체지향 : class 생성  (0) 2020.10.07
생성자 / 초기화 메소드  (0) 2020.10.07
메소드 / 메서드  (0) 2020.10.05
이항연산자의 특징 / 타입에 따른 계산 오류  (0) 2020.09.29
변수의 기본값과 초기화  (0) 2020.09.28
리터럴과 접미사  (0) 2020.09.28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package exam;
 
public class boy {
 
//    다음조건을 만족하는 클래스를 구성하자. 구슬치기와 
//    어린아이가 소유하고 있는 구슬의 개수 정보를 담을 수 있다.
//    놀이를 통한 구슬을 주고받음을 표현하는 메서드가 존재한다.
//    두 번째 조건은 두 아이가 구슬치기를 하는 과정에서 구슬의 잃고 얻음을 의미하는 것이다.
 
int numOfMarble;
String name;
 
// 어린이의 이름과 구슬의 개수를 설정하는 메서드
 
void setBoy(String boyname, int num) {
name = boyname;
numOfMarble = num;
}
 
// 게임의 결과가 실패 -> 구슬 감소
 
void lose(int num) {
numOfMarble -=num;
}
 
// 게임의 결과가 승리 -> 구슬 증가
void win(int num) {
numOfMarble +=num;
}
 
// 게임 후 승리 메서드 : 대상(boy), 구슬의 개수
void playWin(boy boy, int num) {
// 나는 승리 나의 구슬의 개수는 증가
win(num);
// 상대방은 패배 > 감소
boy.lose(num);
}
 
// 보유 구슬 출력
 
void showData() {
System.out.println(name + "의 구슬의 개수는 "+ numOfMarble);
}
 
 
 
public static void main(String[] args) {
 
//        조건을 만족하는 클래스를 정의하였다면, 다음조건을 만족하는 인스턴스를 각각 생성하자. ( 하나의 클래스만 작성하자 )
//        어린이 1의 보유자산  구슬 15개
//        어린이 2의 보유자산  구슬 9개
 
boy boy1=new boy();
boy boy2=new boy();
 
boy1.setBoy("뽀이1"15);
boy2.setBoy("뽀이2"9);
 
//        인스턴스의 생성이 완료되면 다음의 상황을 main 메서드 내에서 시뮬레이션 하자.
//        “1차 게임에서 어린이 1은 어린이 2의 구슬 2개를 획득한다”
 
boy1.playWin(boy2, 2);
//        “2차 게임에서 어린이 2는 어린이 1의 구슬 7개를 획득한다.”
 
boy2.playWin(boy1, 2);
 
//        마지막으로 각각의 어린이의 보유 구슬의 개수를 출력하고 프로그램 종료.
 
boy1.showData();
boy2.showData();
cs

seohs.tistory.com/488

 

[스크랩] 이클립스 단축키

이클립스 단축키 정리 (http://blog.daum.net/sualchi/13720369) —– 실행 —– Ctrl + F11 : 이전에 실행했던 클래스 실행 —– 소스 네비게이션 —– Ctrl + 마우스커서(혹은 F3) : 클래스나 메소드 혹..

seohs.tistory.com

 

—– 실행 —–

Ctrl + F11 : 이전에 실행했던 클래스 실행

 

—– 소스 네비게이션 —–

Ctrl + 마우스커서(혹은 F3) : 클래스나 메소드 혹은 멤버 상세 검색

Alt + LeftAlt + Right : 이후, 이전

Ctrl + O : 소스의 메소드 리스트 확인

F4 : 클래스명을 선택하고 F4를 누르면 해당 클래스의 상속 계층 확인

Alt + <- (->) : 이전(다음) 작업 화면

 

—– 문자열 검색 —–

Ctrl + K : 찾을 문자열을 블럭으로 지정하고 검색

Ctrl + Shift + K : 밑에서 문자열 검색

Ctrl + J : 입력하면서 검색

Ctrl + Shift + J : 입력하면서 밑에서 검색

Ctrl + F : 기본 검색

 

—– 소스 편집 —–

Ctrl + Space : 입력 중에 완성 기능 호출 

F2 : 컴파일 에러 줄에 커서를 놓고 이 키를 누르면 에러 힌트 제공

Ctrl + L : 지정한 소스 줄로 이동

Ctrl + Shift + Space : 메소드 괄호에 커서를 놓고 이 키를 누르면 파라미터 힌트 보여줌

Ctrl + D : 한 줄 삭제

Ctrl + W : 파일 닫기

Ctrl + I : 들여쓰기 자동 수정

Ctrl + Shift + / : 블록을 주석으로 처리 (/* */)

Ctrl + Shift + \ : 블록 주석을 해제

Ctrl + / : 여러 줄을 주석 처리/해제

Alt + Up(Down) : 위(아래) 줄과 바꾸기

Alt + Shift + 방향키 : 블록 선택

Ctrl + Shift + Space : 메소드 파라미터 목록

Ctrl + Shift + O : 자동 import 

Ctrl + Shift + F4 : 열린 파일을 모두 닫음

Ctrl + M : 전체 화면 전환

Ctrl + Alt + Up(Down) : 한 줄(블럭) 복사

Ctrl + , 또는 . : 다음 annotation(에러, 워닝, 북마크) 점프

Ctrl + 1 : 퀵 픽스

F3 : 선언된 변수나  메소드 정의로 이동

Ctrl + T : 상속 계층 팝업 창 

Ctrl + O : 메소드나 필드 이동

Ctrl + F6 : 창 전환

 

—– 템플릿 사용 —–

sysout 입력 후 Ctrl + Space :  System.out.println(); 자동 입력됨

       Windows > Preferences > JAVA > Editor > Templates에 추가 가능 

try 입력한 후 Ctrl + Space : try-catch 문이 자동 완성

for 입력한 후 Ctrl + Space : for 문 자동 완성

 

—– 에디터 변환 —–

여러 파일 작업중일 때 Ctrl + F6 키를 누르면 파일 목록 나옴.  

       F6 누르면 아래로 이동하고 Ctrl + Shift + F6  : 누르면 위로 커서 이동

Ctrl + F7 : 뷰 전환

Ctrl + F8 : 퍼스펙티브 전환

F12 : 에디터로 포커스 이동 

Ctrl + / :  라인/블록 주석 처리 (추가/제거)

Ctrl + L : 특정 줄로 이동

Ctrl + F6 : Editor 창 이동

Ctrl + F7 : View 이동

Ctrl + F8 : Prespectives 이동

Ctrl + D : 커서가 위치한 줄 삭제 

Ctrl + J : Incremental find 

           한 글자자씩 누를 때 마다 코드내의 일치하는 문자열로 이동 

           Ctrl + J 를 다시 누르면 일치 부분을 위/아래 방향키로 탐색 가능

Ctrl + N : 새 파일/프로젝트 생성

Ctrl + 1 (빠른 교정) – 구문에 맞게 소스 교정 지원

Ctrl + 0 : 클래스 구조 트리

Ctrl + Space :  소스에서 사용 가능한 메소드, 멤버 리스트

Ctrl + PageUp , Ctrl + PageDown : Edit 창 이동

Ctrl + Shift + Down : 클래스 내에서 다음 멤버로 이동

Ctrl + Shift + M : 해당 객체에 커서롤 놓고 키를 누르면 Import 구문 자동 생성

Ctrl + Shift + O :  전체 소스에서 import 안 된 클래스의 import 문 자동 생성

Ctrl + Shift + G : 해당 메서드/필드 쓰이는 곳 표시

Alt + Shift + R : 이름 변경 (소스 내에서 영향받는 참조 정보까지 변경)

F3 : 선언된 위치로 이동

F11 : 디버깅 시작

F8 : 디버깅 계속

F6 : 한 줄씩 디버깅 

F5 : 한 줄씩 디버깅할 때 함수인 경우 함수 내부까지 디버깅

F12 : Editor 창으로 이동 

Alt + Up , Alt + Down :  해당 줄을 위/아래로 이동

Alt + Shift + S :  소스 메뉴 출력(Import 추가 , Comment 추가 , Generator 메뉴)

Alt + Shift + Up : 블록 설정 

Alt + Shift + Down : 블록 해제 

Alt + Shift + J :  해당 메서드/클래스에 대한 주석 템플릿 생성

Alt + Shift + Z : 구문 블록을 감싸는 메뉴 제공

Ctrl + Shift + F : 소스 코드를 문법 템플릿에 맞게 정리

Ctrl + Alt + Down: 한 줄 복사 후 그 아래에 붙여넣음

Ctrl + Shift +X : 대문자로 변환

Ctrl + Shift + Y : 소문자로 변환

Ctrl + Shift + L : 모든 단축키 목록 표시

Ctrl + Shift + B : 커서 줄에 중단점 설정

Ctrl + Shift + T : 클래스 검색



출처: https://seohs.tistory.com/488 [Digital Recipe]

'memo' 카테고리의 다른 글

string stringbuffer stringbuilder  (0) 2020.10.13
ArrayList 참고글  (0) 2020.10.12
public static void  (0) 2020.10.12
p s v  (0) 2020.10.07
자바 이름 규칙  (0) 2020.10.05
아스키코드 / 아스키코드표  (0) 2020.09.29
git ignore.io  (0) 2020.09.28

Math.abs()

- static int abs(int a)

- static double abs(double a)

- static float abs(float a)

- static long abs(long a)

- abs() 함수는 인자값에 대한 절대값을 반환하는 함수이다.


public class MathABSTest{

    

    public static void main(String[] args){

        int intNum = -15;

        double doubleNum = -3.14;

 

        //의미가 없으니 위에 두개만 예제로 듭니다.

        //float intNum = -123.2f;

        //long intNum = -18451354;

 

        System.out.println( Math.abs(intNum) );  // 15

        System.out.printlnMath.abs(doubleNum) );  //  3.14

 

    }

}

 

절대값이니 당연히 모든 음수값은 양수값으로 변경되며 절대값으로 반환된 값들은

해당 타입을 그대로 반환합니다.(int 는 int , double은 double 로 반환)

+ Recent posts