목차
기본 Form
프로그래머스 기본 Form
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 한 단어 입력받기 (띄어쓰기 X)
String a = sc.next();
// 숫자 입력받기
int b = sc.nextInt();
// 소수점 입력받기
double c = sc.nextDouble();
// 한 문장 입력받기 (띄어쓰기 O)
String d = sc.nextLine();
// 개행 O
System.out.println(a);
// 개행 X
System.out.print(a);
}
}
프로그래머스 + 백준 기본 Form
import java.util.Scanner;
public class Main {
public int solution(String str, char t) {
int answer = 0;
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner sc = new Scanner(System.in);
System.out.print("");
}
}
Chap01. 문자열
대소문자 변환 관련
String str;
// 전체 문자열 대문자로 변환
str = str.toUpperCase();
// 전체 문자열 소문자로 변환
str = str.toLowerCase();
char c;
// 문자 대문자로 변환
c = Character.toUpperCase(c);
// 문자 소문자로 변환
c = Character.toLowerCase(c);
//////// ASCII 넘버 활용 대문자 (65 ~ 90) / 소문자 (97 ~ 122) : 둘의 차이는 32
// 숫자로 연산되므로 char 로 cast 시켜야 한다
if (c >= 65 && c <= 90) {
c = (char) (c + 32);
} else if (c >= 97 && c <= 122) {
c = (char) (c - 32);
}
//////// 문자가 대문자인지
boolean chk;
// 문자가 대문자인지
chk = Character.isUpperCase(c);
// 문자가 소문자인지
chk = Character.isLowerCase(c);
문자열에서 문자 뽑기
String str;
// 문자열을 문자 배열화
for (char strChar : str.toCharArray()) {}
// 문자열에서 해당 index 에 해당하는 문자 뽑기
char c = str.charAt(i);
배열 길이 vs 문자열 길이
String str;
int[] intArray;
// 문자열 : 괄호 O
for (int i = 0; i < str.length(); i++) {}
// 배열 : 괄호 X
for (int i = 0; i < intArray.length; i++) {}
문자열 자르기
String str = "MyString";
// String.split("")
for (String s : str.split("")) {
System.out.print(s + " ");
}
// String.toCharArray()
for (char c : str.toCharArray()) {
System.out.print(c + " ");
}
// String.charAt(i)
for (int i = 0; i < str.length(); i++) {
System.out.print(str.charAt(i));
}
// Stream 이용
str.chars() // IntStream
.mapToObj(i -> (char) i) // Stream<Character> 으로 변환
.forEach(i -> System.out.print(i + " ") // 출력
// 모두 아래와 같은 결과 출력
// M y S t r i n g
// substring 활용
String.substring(start); // 문자열 start 위치부터 끝까지 문자열 자르기
String.substring(start, end); // 문자열 start 위치부터 end 전까지 문자열 발췌
// 예제
String str = "ABCDEFG";
str.substring(3); // substring(시작위치) 결과값 = DEFG
str.substring(3, 6); // substring(시작위치,끝위치) 결과값 = DEF
String.indexOf 활용
String test = "Hello World";
// indexOf (정방향)
System.out.println(test.indexOf("World")); // 6
System.out.println(test.indexOf("World", 5)); // 6 (탐색을 시작할 위치 : index 5)
System.out.println(test.indexOf('o')); // 4
System.out.println(test.indexOf('o', 5)); // 7 (탐색을 시작할 위치 : index 5)
// lastIndexOf (반대방향)
System.out.println(test.lastIndexOf("World")); // 6
System.out.println(test.lastIndexOf("World", 5)); // -1 (탐색을 시작할 위치 : index 5)
System.out.println(test.lastIndexOf('o')); // 7
System.out.println(test.lastIndexOf('o', 5)); // 4 (탐색을 시작할 위치 : index 5)
// indexOf() 를 사용하여 문자열 내의 특정 문자 갯수 세기
// 발견 못하면 -1
String str = "To be, or not to be, that is the question.";
int count = 0;
int pos = str.indexOf("be");
while (pos > -1) {
count++;
pos = str.indexOf("be", pos + 1);
}
System.out.println(count); // 2
기본 Form
프로그래머스 기본 Form
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 한 단어 입력받기 (띄어쓰기 X) String a = sc.next(); // 숫자 입력받기 int b = sc.nextInt(); // 소수점 입력받기 double c = sc.nextDouble(); // 한 문장 입력받기 (띄어쓰기 O) String d = sc.nextLine(); // 개행 O System.out.println(a); // 개행 X System.out.print(a); } }
프로그래머스 + 백준 기본 Form
import java.util.Scanner; public class Main { public int solution(String str, char t) { int answer = 0; return answer; } public static void main(String[] args) { Main T = new Main(); Scanner sc = new Scanner(System.in); System.out.print(""); } }
Chap01. 문자열
대소문자 변환 관련
String str; // 전체 문자열 대문자로 변환 str = str.toUpperCase(); // 전체 문자열 소문자로 변환 str = str.toLowerCase(); char c; // 문자 대문자로 변환 c = Character.toUpperCase(c); // 문자 소문자로 변환 c = Character.toLowerCase(c); //////// ASCII 넘버 활용 대문자 (65 ~ 90) / 소문자 (97 ~ 122) : 둘의 차이는 32 // 숫자로 연산되므로 char 로 cast 시켜야 한다 if (c >= 65 && c <= 90) { c = (char) (c + 32); } else if (c >= 97 && c <= 122) { c = (char) (c - 32); } //////// 문자가 대문자인지 boolean chk; // 문자가 대문자인지 chk = Character.isUpperCase(c); // 문자가 소문자인지 chk = Character.isLowerCase(c);
문자열에서 문자 뽑기
String str; // 문자열을 문자 배열화 for (char strChar : str.toCharArray()) {} // 문자열에서 해당 index 에 해당하는 문자 뽑기 char c = str.charAt(i);
배열 길이 vs 문자열 길이
String str; int[] intArray; // 문자열 : 괄호 O for (int i = 0; i < str.length(); i++) {} // 배열 : 괄호 X for (int i = 0; i < intArray.length; i++) {}
문자열 자르기
String str = "MyString"; // String.split("") for (String s : str.split("")) { System.out.print(s + " "); } // String.toCharArray() for (char c : str.toCharArray()) { System.out.print(c + " "); } // String.charAt(i) for (int i = 0; i < str.length(); i++) { System.out.print(str.charAt(i)); } // Stream 이용 str.chars() // IntStream .mapToObj(i -> (char) i) // Stream<Character> 으로 변환 .forEach(i -> System.out.print(i + " ") // 출력 // 모두 아래와 같은 결과 출력 // M y S t r i n g // substring 활용 String.substring(start); // 문자열 start 위치부터 끝까지 문자열 자르기 String.substring(start, end); // 문자열 start 위치부터 end 전까지 문자열 발췌 // 예제 String str = "ABCDEFG"; str.substring(3); // substring(시작위치) 결과값 = DEFG str.substring(3, 6); // substring(시작위치,끝위치) 결과값 = DEF
String.indexOf 활용
String test = "Hello World"; // indexOf (정방향) System.out.println(test.indexOf("World")); // 6 System.out.println(test.indexOf("World", 5)); // 6 (탐색을 시작할 위치 : index 5) System.out.println(test.indexOf('o')); // 4 System.out.println(test.indexOf('o', 5)); // 7 (탐색을 시작할 위치 : index 5) // lastIndexOf (반대방향) System.out.println(test.lastIndexOf("World")); // 6 System.out.println(test.lastIndexOf("World", 5)); // -1 (탐색을 시작할 위치 : index 5) System.out.println(test.lastIndexOf('o')); // 7 System.out.println(test.lastIndexOf('o', 5)); // 4 (탐색을 시작할 위치 : index 5) // indexOf() 를 사용하여 문자열 내의 특정 문자 갯수 세기 // 발견 못하면 -1 String str = "To be, or not to be, that is the question."; int count = 0; int pos = str.indexOf("be"); while (pos > -1) { count++; pos = str.indexOf("be", pos + 1); } System.out.println(count); // 2