-
Q1 평균점수 구하기
나는 Map자료형으로 나열해서 구현해보겠다. 반복문을 사용하고 싶었으나, 모르겠어서 일단 단순하게 구현해보았음import java.util.HashMap; public class HelloWorld { public static void main(String[] args){ HashMap<String, Integer> subject = new HashMap<>(); subject.put("국어", 80); subject.put("영어", 75); subject.put("수학", 55); int a = subject.get("국어"); int b = subject.get("영어"); int c = subject.get("수학"); double average; System.out.println(average = (a+b+c)/subject.size()); } }
Q2 홀수짝수 판별
import java.util.HashMap; public class HelloWorld { public static void main(String[] args){ int a = 13; if(a%2 == 0){ System.out.println("짝수입니다."); } else{ System.out.println("홀수입니다."); } } }
Q3. 주민등록번호 나누기
import java.util.HashMap; public class HelloWorld { public static void main(String[] args){ String number = "881120-1068234"; System.out.println(number.substring(0, 6)); System.out.println(number.substring(7)); } }
Q4. 주민등록번호 인덱싱
import java.util.HashMap; public class HelloWorld { public static void main(String[] args){ String pin = "881120-3068234"; char at = pin.charAt(7); System.out.println(at); switch(at){ case '1': case'3': System.out.println("남자입니다."); break; case '2': case'4': System.out.println("여자입니다."); break; } } }
Q5. 문자열 바꾸기
import java.util.HashMap; public class HelloWorld { public static void main(String[] args){ String a = "a:b:c:d"; String b = a.replace("a:b:c:d", "a#b#c#d"); System.out.println(b); } }
Q6 리스트 역순 출력하기
import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; public class HelloWorld { public static void main(String[] args){ ArrayList<Integer> myList = new ArrayList<>(Arrays.asList(1, 3, 5, 4, 2)); System.out.println(myList); myList.sort(Comparator.reverseOrder()); System.out.println(myList); } }
Q7 리스트를 문자열로 만들기
import java.util.ArrayList; import java.util.Arrays; public class HelloWorld { public static void main(String[] args){ ArrayList<String> myList = new ArrayList<>(Arrays.asList("List","is","too","short")); String result = String.join(" ", myList); System.out.println(result); } }
Q8 맵에서 값 추출하기
import java.util.HashMap; public class HelloWorld { public static void main(String[] args){ HashMap<String, Integer> grade = new HashMap<>(); grade.put("A", 90); grade.put("B", 80); grade.put("C", 70); System.out.println(grade.remove("B")); System.out.println(grade); } }
Q9 중복 숫자 제거하기
set은 중복이 불가능하다는 특징이있으므로
List ->set으로 변경해서 중복을 없앤 후 다시
set ->List형으로 자료형을 변경해준다
import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; public class HelloWorld { public static void main(String[] args){ ArrayList<Integer> numbers = new ArrayList<>(Arrays.asList(1,1,1,2,2,3,3,4,4,5)); System.out.println(numbers); HashSet<Integer> set = new HashSet<>(numbers); //List를 set으로 변경 System.out.println(set); ArrayList<Integer> result = new ArrayList<>(set); // set을 다시 List로 변경 System.out.println(result); } }
Q10 매직넘버 제거하기
흥미로웠던 점은
printCoffePrice라는 key값에 대응하는 value값을 출력하는 메소드를 따로 만들어둔점과
매개변수로 Enum 자료형을 대입한것
맵 자료형을 이용해 enum타입 key와 value값을 매칭시켜 저장한점
import java.util.HashMap; public class HelloWorld { enum CoffeType{ AMERICANO, ICE_AMERICANO, CAFE_LATTE }; static void printCoffePrice(CoffeType type){ HashMap<CoffeType, Integer> priceMap = new HashMap<>(); priceMap.put(CoffeType.AMERICANO,3000); priceMap.put(CoffeType.ICE_AMERICANO,4000); priceMap.put(CoffeType.CAFE_LATTE,5000); int price = priceMap.get(type); System.out.println(String.format("가격은 %d 원입니다.", price)); } public static void main(String[] args){ printCoffePrice(CoffeType.AMERICANO); } }
'java' 카테고리의 다른 글
[java] 클래스 (0) 2023.01.16 [java] 제어문(if,switch,while,for) (0) 2023.01.16 [java] 자료형과 형변환 (0) 2023.01.12 [java] 명명규칙 (0) 2023.01.12 [java] java공부를 시작하며 (1) 2023.01.12