리스트 사이즈 구하기
List lists;
lists.size(); : 리스트 사이즈
길이 관련
length : 배열의 길이
length() : 문자열(String)의 길이
size() : ArrayList의 길이를 확인할 때(Collections)
List에서 합산 : j에서 j+i-1까지 합친다.
Arrays.stream(elemts, j, j+i).sum();
큐
Map<Integer, Integer> maps = new HashMap<>(); for(var m : maps.entrySet()) {[value값 내림차순 정렬, 오름차순은 map.get(a)-map.get(b)]
맵의 키값들 리스트로 가져와서 => 정렬(map의 밸류로) => 맵에서 키에 해당하는 밸류값 가져온다.
List keys = new ArrayList<>(map.keySet());
keys.sort((a, b) -> map.get(b) - map.get(a)); // value값 내림차순 정렬된 상태
for (String key : keys) {
int value = map.get(key);
}
[key값 기준으로 내림차순, 오름차순 정렬 : TreeMap]
Map<Integer, Integer> map = new TreeMap<>(Comparator.reverseOrder());
[람다식을 이용한 배열 다중조건 정렬]
// col 번째 컬럼의 값을 기준으로 오름차순 정렬하되, 만약 그 값이 동일하면 첫번째 컬럼의 값을 기준으로 내림
Arrays.sort(data, (a,b) -> {
if(a[col-1] == b[col-1]) return b[0] - a[0];
return a[col-1] - b[col-1];
});
내림차순 - arr.sort((a, b) -> (b + a).compareTo(a + b));
오름차순 - arr.sort((a, b) -> (a + b).compareTo(b + a));
*주의 a b <- 이런식으로 띄어쓰기 두개 나오면
split 하면 "" <= 빈칸나온다.
문자열에서 특정 문자열 포함하는지
String string1 = "1234";
String string2 = "23";
boolean is = string1.contains(string2);
문자열에서 특정 문자열로 시작하는지
String string1 = "1234";
String string2 = "12";
boolean is = string1.startsWith(string2);
x 진법으로 변환하기
int num;
String s = Integer.toString(num, 2);
문자열 숫자로 변환
int number = Integer.parseInt(str);
람다식 이용해서 내림차순
keys.sort(((a, b) -> b - a));
응용 : list.sort((a, b) -> map.get(b) - map.get(a));
람다식 이용해서 오름차순
keys.sort(((a, b) -> a-b));
응용 : list.sort((a, b) -> map.get(a) - map.get(b));
맵에서 밸류값 가져오기
List values = new ArrayList<>(map.values());
맵에서 키값 가져오기
List keys = new ArrayList<>(map.keySet());
for문없이 합(int[] 배열) : j에서 j+i-1까지 합
Arrays.stream(arr, j, j+i).sum()