List는 중복이 허용되고 add된 순서가 지켜지지만 Set는 기본적으로 중복이 허용되지 않고 순서가 없다. HashSet : 중복x 순서x, add한 순서가 지켜지지 않는다. TreeSet : 중복x, 사전순 순서가 지켜진다. LinkedHashSet: 중복x, add한 순서가 지켜진다. 관련문제 https://programmers.co.kr/learn/courses/30/lessons/64065 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr
char to String 변환 : Character.toString(ch); String 대문자 변환 : str.toUpperCase() char 대문자 변환 : (char) ('b' + ('A'-'a')) 소문자가 대문자보다 아스키값이 크다. 순서가 더 뒤기 때문이다. str.substring(beginindex, endindex) subString()이 아니다! substring(beginindex, 개수) 가 아니다!!!! 개수로 뽑아내려면 substring(beginindex, beginindex+개수) 문자열 치환 replace: 바뀌고 싶은 문자열 치환 replaceAll: 정규식 가능-> 특수문자 치환 어려움 replaceFirst: 치환할 문자열에 처음 해당하는 부분만 바꿔줌
관련 문제 -> 메뉴 리뉴얼 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr import java.util.*; public class Main { public static void main(String[] args) { // 1.List 내의 최대값을 찾아주는 함수 List list = new ArrayList(); list.add(1); list.add(133); list.add(22); System.out.println(Collections.max(list)); // 2. 해시맵의 keySet(), val..
관련 문제 -> 가장큰수 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr import java.util.*; class Solution { public static void main(String[] args) { // 1. Integer형 compare(작은 수, 큰 수) -> 음수 System.out.println(Integer.compare(1, 10)); // -1 System.out.println(Integer.compare(10, 10)..
Comparator 클래스를 상속하여 내림차순 하는 방법이나, Collections.reverseOrder()를 사용하는 방법은 Objective 타입의 배열 혹은 Primitive 타입의 Wrapper Class로 이루어진 배열을 정렬할 때만 사용할 수 있다. 따라서 Primitive 타입으로 이루어진 배열을 내림차순 정렬할 때는, 오름차순 정렬 후, 뒤집어서 내림차순 정렬한다. import java.util.*; public class Main { public static void main(String[] args) { ArrayList list = new ArrayList(); Collections.sort(list, Collections.reverseOrder()); int[] arr = new ..
String str1 = "strrr"; // 스트링 상수 -> 기본 자료형 처럼 쓰임 String str2 = "strrr"; System.out.println(str1==str2); // true String str3 = new String("strrr"); String str4 = new String("strrr"); System.out.println(str3==str4); // false System.out.println(str3.equals(str4)); // true // String의 equals()는 Object의 equals()의 모든 요소가 같은지 비교하도록 // 이미 오버라이딩 되어 있음!!!
printf() 메소드는, 문자열 형식에 변수를 삽입하여 출력한다. %d : 10진수(정수) %x : 16진수 %o : 8진수 %f : 실수 0진수(정수) %d 0으로 채워수 출력하기 %5d -> 0으로 채워서 다섯 자리수로 만들기, 오른쪽 정렬 -%5d -> 0으로 채워서 다섯 자리수로 만들기, 왼쪽 정렬 16진수 %x %x -> 16진수 소문자로 출력 %X -> 16진수 대문자로 출력 8진수 %o 실수 %d %.2f -> 반올림하여 소수점 두자리수 까지 출력하기 %5.1f -> 정수 부분은 0으로 채워서 다섯자리 수까지, 실수부분은 반올림하여 소수 첫째자리수 까지 출력하기. 정수부분이 다섯자리 수 넘어가면 정수 부분 전체가 출력된다. System.out.printf("%5.3f", 12345667.3..