#main 메서드
자바 어플리케이션이 실행될 때 가장 먼저 실행되며 프로그램이 구동되는 메소드입니다. 이 때 String[] args는 파라미터로 이동됩니다.
2. Main 예시(1)
3. Main 예시(2)
* 인텔리제이 기준 ( main 메서드에 추가할 데이터가 있을 경우 )
run - > edit configurations -> 현재 클래스를 선택 -> program arguments -> string 배열을 띄어쓰기로 추가
#String 클래스
1. 특징
(java.lang.String) 위치해있다.
문자열 char형을 배열로 표현하는 자바의 문자열 클래스입니다.
자바의 대표적인 불변 객체입니다.
2. 사용 방법
String 변수명 = "값";
String 변수명 = new String("값");
3. String 예시(1)
4. 추출되는 다양한 표현방법
● concat() : 문자열과 문자열을 연결합니다.
- 문자열.concat("연결할 문자열");
● indexOf() : 원하는 문자를 찾아 해당되는 문자(열)의 index를 리턴합니다.
- 문자열.indexOf('문자열에서 찾고자 하는 문자');
- 문자열.indexOf("문자열에서 찾고자 하는 문자열");
* index는 0번부터 시작! 따라서 , P는 다섯 번째에 존재한다
* str2에는 대소문자 구별을 하기 때문에 "JAVA"를 찾지 못하면 -1로 나온다.
* 해당 글자의 시작이 첫 번째에 있기 때문에 0으로 확인된다.
● trim() : 문자열의 앞뒤 공백을 제거합니다.
- 문자열.trim();
● toLowerCase(), toUpperCase() : 문자열을 소문자, 대문사로 변환합니다.
- 문자열.toLowerCase();
- 문자열.toUpperCase();
● substring() : 원하는 문자열을 추출합니다. // "Java Programming"
- 문자열.substring(원하는 index번호부터 끝까지 추출);
- 문자열.substring(원하는 index번호, 추출하고자 하는 index번호 전까지);
* 문자열의 index 5부터 끝까지 추출합니다.
* 문자열의 index 5부터 9(5~8)가 되기 전까지 추출합니다.
● toString() : 객체가 가지고 있는 정보나 값을 리턴하는 메서드입니다.
- 문자열.toString();
● length() : 문자열의 길이를 리턴합니다.
- 문자열.length();
● split() : 특정 문자열을 기준으로 문자열을 나누고 배열에 저장해줍니다.
String[] str = 문자열.split(" "); -> 띄어쓰기 기준으로 문자열을 나눠준다.
ex) 문자열 -> 안녕하세요. Java Programming입니다.입니다
str[0] = "안녕하세요.";
str[1] = "Java";
str[2] = "Programming";
str[3] = "입니다.";
split() 예시1)
// member
// member[3]
split() 예시 2)
● Integer.parseInt : 문자로 저장되어있는 숫자를 integer로 변환해서 추출합니다.
[출처] https://docs.oracle.com/javase/8/docs/api/index.html
추가 예시)
● next() : 문자열을 입력받는다. 띄어쓰기 전까지 입력받는다. 띄어쓰기를 저장하지 못한다.
nextLine() : 문자열을 입력받는다. 한 줄 전체를 입력받는다.
nextLine() : 매소드는 키보드 버퍼가 비어있을 경우 입력을 요구하여 대기하고 키보드 버퍼가 비어있지 않으면 키보드 버퍼 전체의 내용을 읽어 들인다.
5. 대표적인 불변 객체 String
● equals() : 두 문자열을 값이 같은지 비교합니다.
- 문자열.equals(문자열);
* 변경이 불가능한 클래스이며, 가변적이지 않는 클래스입니다. ( 값이 바뀌지 못한다는 뜻이다. )
* stack에 String이름으로 변수가 만들어진다. Heep 메모리에 내용의 주소가 저장된다.
* Heep 별도의 주소가 바뀌는 것이다. 리모컨만 바뀌는 기능이다.
* 대입을 여러 번 반복해서 사용할 경우 메모리에 큰 낭비가 생긴다.(주의)
* 따라서, str 비교는 번지를 저장 ---> hello 주소 힙 저장 / 형식이 다르면 다른 주소로 저장한다.
6. String 예시(2)
주민등록번호 유효성 체크
0 0 1 0 1 1 1 0 6 8 5 1 2
1. 주민등록번호 각 자리에 2,3,4,5,6,7,8,9,2,3,4,5를 곱합니다. 마지막 자리는 빼놓습니다.
0 0 1 0 1 1 1 0 6 8 5 1 2 <- 빼놓음
* * * * * * * * * * * *
2 3 4 5 6 7 8 9 2 3 4 5
2. 곱한 값을 모두 더합니다.
0 + 0 + 4 + 0 + 6 + 7 + 8 + 0 + 12 + 24 + 20 + 5 = 86
3. 더한 값을 11로 나눈 나머지 값을 구합니다.
86 % 11 = 9
4. 나머지 값을 11에서 뻅니다.
11 - 9 = 2
4-1. 만약 4번에서 나온 결과가 2자리 (10보다 크거나 같은 경우) 다시 10으로 나눈 나머지 값을 구합니다.
5. 마지막 남은 값이 주민등록번호 끝자리와 일치하면 유효한 주민등록번호입니다.
빼놓은 숫자 2 // 일치
7. String 예시(3)
문제)
아이디와 비밀번호를 입력받아 로그인 여부를 알려주는 프로그램을 작성.
(단, id는 admin, 비밀번호는 1234인 경우 로그인, 아닌 경우는 로그인 실패로 처리)
입력)
아이디를 입력하세요. admin
비밀번호를 입력하세요. 1111
로그인 실패!
아이디를 입력하세요. admin
비밀번호를 입력하세요. 1234
로그인 성공!
'🎨 Programming > JAVA' 카테고리의 다른 글
[JAVA] 14. 상속 (0) | 2020.06.21 |
---|---|
[JAVA] 13. 객체 지향 프로그래밍(Object Oriented Programming) / 은닉화 (0) | 2020.06.19 |
[JAVA] 11. 함수 / 메소드(Method) (0) | 2020.06.19 |
[JAVA] 10. 배열(Array) (0) | 2020.06.17 |
[JAVA] 8. 가위바위보 게임(Random) (0) | 2020.06.16 |