-
반응형
안녕하세요, 하루플입니다.
안드로이드 개발이나 코딩 테스트 공부에 활용할 수 있는 자바 함수를 정리하는 게시글입니다.
개발하다 추가적인 함수가 필요할 때마다 업데이트 하겠습니다.
문자열을 정수로 변환 String -> Integer
Integer.parseInt("1004");
Integer.parseInt("1004", 10); //10진수
Integer.parseInt("1004", 8); //8진수
정수를 문자형으로 변환 Integer -> String
Integer.toString(1004);
String.valueOf(1004);
문자 치환 : 한 문자를 다른 문자로 바꾼다. char 타입의 인자를 받는다.
String str = "ABCDE";
String text = str.replace('C', 'F'); //모든 C문자를 F로 바꾼다.
text : ABFDE
int, long 타입을 char로 변환
long n = 68451343815;
char[] arr = String.valueOf(n).toCharArray(); //String으로 먼저 변환 후 char로 변환한다.
소문자로 치환
String str = "abcde";
String small = str.toLowerCase();
대문자로 치환
toUpperCase();
대, 소문자인지 판단
Character.isLowerCase()
Character.isUpperCase()
char ch = 'a';
if(Character.isLowerCase(ch)){ //소문자
ch = (char)((ch-'a'+n)%26 + 'a');
}한 글자식 읽기
String str = "abcde";
for(int i=0; i<5; i++){
char ch = str.charAt(i);
}
특정 값이 포함되어 있는지?
ArrayList<Integer> list = new ArrayList<>(Arrays.asList(10,6,20,3));
Int a = list.indexOf(6); //0 있으면 0
Int b = list.indexOf(7); //-1 없으면 -1
문자열 원하는 만큼 자르기
String str = "abcde";
String result = str.substring(3); //3번째 인덱스부터 값 저장
result : de
String str = "abcdefg";
String result = str.substring(3,6); //3~5번째 인덱스까지 값 저장
result : def
두 값중 더 크거나 작은 값
Math.max(5, 2); //5
Math.min(5, 2); //2
Math.max(Math.max(5,2), 7); //7
가변 리스트 ArrayList
ArrayList list = new ArrayList(); //타입 미설정 Object로 선언된다.
ArrayList<Integer> list = new ArrayList<Integer>(); //int 타입만 사용가능.
ArrayList<Integer> list = new ArrayList<>(); //new 에서 타입 파라미터 생략가능.
ArrayList<String> list = new ArrayList<String>(); //String 타입만 사용가능.
ArrayList list = new ArrayList<Integer>();
list.add(3); //값 추가.
list.add(null); //null 값도 add 가능.
list.add(10, 3); //index 10에 3 삽입.
list.remove(3); //index3 제거
list.clear; //모든 값 제거
list.size(); //list 크기
list.contains(3); //list에 3이 있는지 검색 true, false 리턴
int 배열 오름차순 정렬
int arr[] = {4,22,33,15,17,19};
Arrays.sort(arr);
String 배열 오름차순 정렬
String arr[] = {"apple","orange","banana","pear","peach","melon"};
Arrays.sort(arr);
내림차순 정렬
Arrays.sort(arr, Collections.reverseOrder());
배열 일부분만 정렬
int arr[] = {4,22,33,15,17,19};
Arrays.sort(arr, 0, 4); //0~3 인덱스만 정렬
ArrayList를 일반 배열로 변환
int[] answer = {2, 5, 10, 15}; //일반 배열
ArrayList<Integer> arrList = new ArrayList<Integer>(); //가변 리스트
answer = new int[arrList.size()]; //answer 리스트 크기 선언.
for(int i=0; i<answer.length; i++){
answer[i] = arrList.get(i);
}
return answer;
문자열 비교할때는 equals 쓰는게 좋다
== 을 사용하면 주솟값을 비교하는데 null 값을 참조할 수도 있어서 에러남.
equals가 값 자체를 비교하는거다.
String str = "abc";
if(str.equals("abc")){
System.out.println("abc 있음.")
}
배열 복사하기 Arrays.copyOfRange
Arrays.copyOfRange(배열 이름, 시작 인덱스, 끝 인덱스)
int[] temp = Arrays.copyOfRange(array, 2,5);
반응형'개발 > 코딩테스트' 카테고리의 다른 글
[프로그래머스/JAVA] 없는 숫자 더하기 (0) 2021.10.10 [프로그래머스/JAVA] 숫자 문자열과 영단어 (2) 2021.10.08 [백준/JAVA] 11720번 숫자의 합 풀이 (0) 2021.10.03 [백준/JAVA] 2577번 숫자의 개수 (0) 2021.10.03 [백준/JAVA] 8958번 OX 퀴즈 풀이 (0) 2021.10.02 댓글