사용자에게 프로그램에서 사용할 닉네임을 입력받을 예정입니다
- 닉네임은 2글자 이상 10글자 이내로 설정해야 합니다
- 닉네임에는 절대로 운영자라는 글자가 포함될 수 없습니다
- 위의 경우에 해당한다면 잘못된 닉네임 형식입니다 출력, 아니면 닉네임 설정 완료 출력
메인 메소드 (1) - length()와 contains(String str) 사용
package day14_api.lang.String;
import java.util.Scanner;
public class Test03 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 입력
System.out.println("닉네임을 입력해주세요");
String nickname = sc.next();
sc.close();
// 판정
boolean number = nickname.length() >= 2 && nickname.length() <= 10;
boolean exclusion = !nickname.contains("운영자");
// 1) 포함하지 '않는다'를 위해 !(부정 연산자) 사용
// 2) 특정 String을 포함하는지 여부(true/false)를 반환하는 변수명.contains 사용
// 출력
if(number & exclusion) {
System.out.println("닉네임 설정 완료");
}
else {
System.out.println("잘못된 닉네임 형식입니다");
}
}
}
.length()
- 문자열의 길이를 반환 (int)
변수명.length()
.contains(String str)
- 문자열에 특정 문자열이 포함되어있는지를 반환 (boolean)
변수명.contains(특정 문자열)
메인 메소드 (2) - length()와 indexOf(String str) 사용
package day14_api.lang.String;
import java.util.Scanner;
public class Test03_1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 입력
System.out.println("닉네임을 입력해주세요");
String nickname = sc.next();
sc.close();
// 판정
boolean number = nickname.length() >= 2 && nickname.length() <= 10;
boolean exclusion = nickname.indexOf("운영자") == -1;
// .indexOf : 앞에서부터 문자열을 조사해서 특정 String이 포함되어 있으면 그 시작점 index를 출력
// 만약 포함하지 않는다면 -1을 반환
// 출력
if(number & exclusion) {
System.out.println("닉네임 설정 완료");
}
else {
System.out.println("잘못된 닉네임 형식입니다");
}
}
}
.indexOf(String str)
- 문자열을 앞에서부터 조사해서 특정 문자열을 포함하면 해당 문자열의 시작점 index를 반환 (int)
- 만약 해당 문자열을 포함하지 않는다면 -1을 반환
변수명.indexOf(특정 문자열)
** 추가
.lastIndexOf(String str)
- 문자열을 앞에서부터 조사해서 특정 문자열을 한 개 이상 포함하면 해당 문자열의 가장 마지막 시작점 index를 반환 (int)
- 만약 해당 문자열을 포함하지 않는다면 -1을 반환
변수명.lastIndexOf(특정 문자열)