Java
자바 문자열 핵심
기본 입출력
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
char c = sc.next().charAt(0);
System.out.println(); //줄바꿈
System.out.printf("%.2f %d",a,b);//포맷
System.out.print();//그냥 출력
//배열
int[] arr = new int[크기];
int[] arr = new int[3]{1,2,3};
문자열 입력
Scanner sc = new Scanner(System.in);
String str = sc.next(); //공백으로 나누어서 입력받음
String str = sc.nextLine(); // space를 포함해서 입력받음
문자열 관련 코드
str.length()// str문자열의 길이 반환
String a = "apple", b = "banana";
a = a + b; //문자열 합치기 가능1
String a = "apple", b = "banana", c = "candy";
String totStr = "";
totStr += a;
totStr += b;
totStr += c;
//문자열 합치기 가능2
str.charAt(5); //str문자열의 인덱스 5번 반환
문자열.substring(시작 인덱스, 끝 인덱스)//시작 인덱스부터 끝 인덱스 전까지로 이루어진 부분문자열이 반환
s.substring(i, i + 2).equals("ab")//i~i+2가 ab랑 같은지
s.contains("ab")//s라는 문자열이 ab를 가지고 있는지 성공하면 true반환 아니면 false반환
s.indexOf("ab")//s에서 ab라는 해당 부분 문자열이 없는 경우에는 -1을, 있는 경우에는 가장 앞에 나오는 부분 문자열의 위치를 반환
문자열 끼리의 == 연산자는 두 문자열의 주소 값이 일치하는지를 비교하는 연산이기에 목적과는 다릅니다. str1.equals(str2) 함수를 써야한다.
문자열을 배열로 만들기
public class Main {
public static void main(String[] args) {
String s = "baaana";
char[] arr = s.toCharArray(); //문자열을 배열로 만들기
arr[2] = 'n';
s = String.valueOf(arr); //배열을 문자열로 만들기
System.out.println(s);
}
}
>> banana
아스키코드 출력
System.out.println((int)'A');
// A의 아스키코드인 65 출력
Math
Math.abs(숫자);
문자열을 정수로 변환하기
int aInt = Integer.parseInt(a) + 1;
정수를 문자열로 변환하기
Integer.toString(a);
사전순 앞 비교
String a = "abc";
String b = "abd";
String c = "aba";
System.out.println(a.compareTo(b)); // -1
System.out.println(a.compareTo(c)); // 2
System.out.println(a.compareTo(a)); // 0
//compareTo() 함수를 사용합니다. 두 문자열 str1, str2가 주어졌을 때 str1.compareTo(str2) 값이 0보다 작으면 str1이 사전순으로 더 앞서고, 0보다 크면 str2이 사전순으로 더 앞서고, 0이면 두 값이 같음을 의미합니다.