Long 문법
String을 Long으로 변환
Long.parseLong(String s);
String 문법
String.valueOf(int i) : i를 string i로 변환시켜준다.
String.substring(int i , int n) : i index위치부터 n - 1 index위치까지 자른 String을 반환한다.
String.split(String s) : s를 기준으로 문자열을 잘라준다.
String.split(String s, int i) : s를 기준으로 문자열을 i의 크기만큼 잘라준다. // 01-23-45일 경우 split("-",2); 라면 str[0] = 01 str[1] = 23-45의 값을 가지게 된다.
치환
10진수 -> 2진수 String : Integer.toBinaryString(8); // 1000
2진수 -> 10진수 int : Integer.parseInt("1000",2); //8
parseInt(String s, int radix) : String s 를 radix인수로 변환
parseInt(String s) : String s를 int 값으로 변환
정규표현식
String [] str = my_string.split("[a-zA-Z]") : a-zA-z사이의 값으로 split
replaceAll("[^0-9]", "") : 0~9사이의 값이 아닌 경우 모두 삭제
정렬
오름차순
Integer[] arr = {1, 26, 17, 25, 99, 44, 303};
Arrays.sort()
내림차순
Integer[] arr = {1, 26, 17, 25, 99, 44, 303};
Arrays.sort(arr, Collections.reverseOrder());
문자열 정렬
public String solution(String s) {
s = Stream.of(s.split(""))
.sorted()
.collect(Collectors.joining());
배열 변환
Stream을 이용한 방법
Integer[] arr3 = Arrays.stream(arr).boxed().toArray(Integer[]::new);
확인을 위해 .collect를 사용해 리스트로 변환
System.out.println(Arrays.stream(arr3).collect(Collectors.toList()));
Integer 배열을 Int 배열로
int[] arr4 = Arrays.stream(arr3).mapToInt(i->i).toArray();
String int 배열로 변환
Arrays.stream(br.readLine().split(" ")).mapToInt(Integer::parseInt).toArray();
Integer -> int로 변환
int [] sum = {}
ArrayList<Integer> answer = new ArrayList<>();
sum = answer.stream().distinct().mapToInt(Integer::intValue).toArray();
인덱스 찾기
기본 데이터 유형으로 변환하기에 integer리스트로 변환 필수
Integer배열 인덱스 위치 반환
Integer[] array1 = {2, 4, 6, 8, 10};
int getIndex = Arrays.asList(array1).indexOf(8);
배열 인덱스 위치 반환
import java.util.stream.IntStream;
int[] array1 = {1, 3, 5, 7, 9};
int elementToFind = 3;
int indexOfElement = IntStream.range(0, array1.length).
filter(i -> elementToFind == array1[i]).
findFirst().orElse(-1);