
JS
형 변환 ES6+ 에서 추가된 Symbol, BigInt 정리
String, Number, Boolean, Object의 명시적 형변환에 대해 보완
좀 더 실무에선 어떻게 쓰는지에 대해 정리 → 링크 본문 보완
템플릿 리터럴 및 백틱 형태 정리 → 링크 본문 보완
각각의 형 변환에 대해 재정리 → 링크 본문 보완
보완점 요약
// 템플릿 리터럴로 String 형 변환 let number1 = 12345n; console.log(`${number1}`); // + 키워드를 통한 Number 형 변환 let thisisNum = "10.1010"; console.log(+"abcd"); // -> NaN console.log(+thisisNum); // !! 키워드를 통한 Boolean 형 변환 let anyway_thisisTrue = "whatever"; console.log(!!anyway_thisisTrue); // 원시 -> Object 참조형 let str = "wow"; console.log(str.toUpperCase()); // 이 때 JS 엔진은 new String("wow") 형으로 객체를 만들고 대문자화 let number100 = 100; let object1 = Object(number100); console.log(object1); let object2 = new Object(number100); console.log(object2); // 이 경우엔 Number 객체가 아니라 일반 객체로 변환됨 let object3 = { value: number100 }; console.log(object3); // Object 참조형 -> 원시 // Symbol에 따른 힌트 추가로 Hook을 통해 각각으로 형변환 될때 값 제공 const objects = { valueOf() {return 31; }, toString() {return "custom";} }; console.log(`${objects}`); // custom console.log(+objects); // 31 // Json 형 형변환 ** // 응답 JSON을 객체로 const response = '{"id":1,"price":2500}'; const data = JSON.parse(response); // { id: 1, price: 2500 } // 직렬화를 통해 JSON으로 const datas = {keydata : 112233, cost : 999}; const jsonDatas = JSON.stringify(datas); console.log(jsonDatas);
Java 버전 별 정리
Java 버전 별 차이 및 키워드 정리 Java 21의 가상 쓰레드, Java 25의 Scoped 개념은
따로 학습 과정과 정리의 필요성 느낌, 겉만 핥은 느낌
내배캠 퀘스트
조건문을 이용한 프로그램 구상 및 문서화, 실제 구현
워크시트 작성법 안내
주제, 입력 설계, 분기 설계, 테스트 케이스 작성, 코드 스켈레톤 순서
import java.util.Scanner; public class learnCheckProgram { public static String scoreCheck(Scanner sc) { String scoreInput; int score; while (true) { scoreInput = sc.nextLine(); try { score = Integer.parseInt(scoreInput); if (score < 0 || score > 100) { System.out.println("잘못된 값을 입력하셨습니다, 다시 진행해주세요 (0~100)"); } else { break; } } catch (Exception e) { System.out.println("잘못된 값을 입력하셨습니다, 다시 진행해주세요 (0~100)"); } } if (score == 100) { return "A"; } else if (score > 70) { return "B"; } else if (score < 70 && score > 50) { return "C"; } else if (score < 50) { return "D"; } else { return "ERR"; } } public static boolean ynCheck(Scanner sc) { while (true) { String yn = sc.nextLine().toUpperCase(); if (yn.equals("Y")) return true; if (yn.equals("N")) return false; System.out.println("잘못된 값을 입력하셨습니다, 다시 진행해주세요 (Y/N)"); } } public static void allCheck() { Scanner scanner = new Scanner(System.in); System.out.println("오늘 학습 체크하기!"); System.out.println("오늘은 강의나 따로 학습을 진행하였나요? (Y/N)"); if (!ynCheck(scanner)) { System.out.println("학습을 진행하고 오세요!"); return; } System.out.println("학습내용을 정리하였나요? (Y/N)"); if (!ynCheck(scanner)) { System.out.println("정리하고 오세요!"); return; } System.out.println("TIL을 작성하였나요? (Y/N)"); if (!ynCheck(scanner)) { System.out.println("작성하고 오세요!"); return; } System.out.println("얼마나 이해하였나요? (0~100)"); switch (scoreCheck(scanner)) { case "A": System.out.println("완벽해요! 수고하셨어요"); break; case "B": System.out.println("이해가 덜 된 부분만 다시 봐요!"); break; case "C": System.out.println("이해한게 맞나요? 다시 확인해봐요!"); break; case "D": System.out.println("다시 공부해봐요!"); break; } } public static void main(String[] args) { allCheck(); } }
워크시트 작성은 상당히 설계에 도움되는 부분으로 보여 기억해두기 위해 따로 저장
Share article