java 42

[국비][JAVA] 자동 형변환과 문자열 비교

자동 형변환 : 자바에서 int와 long 간의 비교 시 int가 long으로 자동 형변환되어 비교됨문자열 비교시 == 연산자는 참조값을 비교, equals() 메서드는 문자열의 실제 내용을 비교 자동 형변환과 값 비교- 자바는 같은 타입끼리 연산자 사용 가능- 다만, 서로 다른 기본 타입을 비교할 때, 작은 타입이 큰 타입으로 자동 형변환됨   ex) int 타입과 long 타입의 값을 비교할 때, int 타입이 long 타입으로 자동 형변환된 후 비교가 이루어짐 문자열 비교- 문자열을 비교할 때는 == 연산자와 equals() 메서드의 차이를 이해해야 함- == 연산자는 참조값을 비교- equals() 메서드는 문자열의 내용을 비교합니다.  [예제 코드]public class Main { pub..

Java/[국비] JAVA 2024.05.27

[국비][JAVA] char 타입 → int 타입 변환 및 아스키코드표

char 타입이 int 타입으로 변환되는 이유는 문자 데이터가 컴퓨터 내에서 정수로 표현되기 때문char 타입은 실제로는 0에서 255 사이의 정수값을 가지며, 이는 아스키 코드(ASCII) 표에 대응됨 문자아스키 코드 값문자아스키 코드 값A65a97B66b98C67c99048149250351※ 자세한 아스키 코드 값은 네이버 및 구글에 검색  [아스키 코드 적용 코드 예시 1_콘솔 출력]public static void main(String[] args) { System.out.println("1" + 1); //11 System.out.println(1 + "1" + 1); //111 System.out.println(1 + 'a' + "1"); // (1+97) + 문자 1 -> 9..

Java/[국비] JAVA 2024.05.27

[국비][JAVA] 오버플로우와 언더플로우 개념 / 쉬프트 연산자

오버플로우(Overflow)언더플로우(Underflow)표현할 수 있는 최대값을 초과하는 상황표현할 수 있는 최소값보다 더 작은 값이 되는 상황정수 연산에서 최대값을 다룰 때부동 소수점 연산에서 매우 작은 수를 다룰 때∴ 값이 순환하여 음수 또는 다른 값이 됨∴ 값이 0으로 처리되거나 매우 작은 비정규화 수로 표현됨오버플로우 예시언더플로우 예시int max_int = 2147483647; // 32비트 정수 최대값 int overflowed_value = max_int + 1; // overflowed_value는 -2147483648이 됨 int minInt = Integer.MIN_VALUE; // 32비트 정수 최소값: -2147483648 int underflowedValue = minInt - ..

용어/java 2024.05.27

[국비][JAVA/JS] 자바와 자바스크립트의 차이

JAVAJavaScript타입 시스템- 정적 타입 언어- 변수 선언시 타입을 명시- 변수의 타입이 결정된 후에는 변경할 수 없음- 동적 타입 언어- 변수 선언 시 타입을 명시하지 않음- 변수 타입은 할당되는 값에 따라 자동으로 결정사용 목적- 서버 측 애플리케이션- 모바일 애플리케이션(특히 Android)- 데스크탑 애플리케이션 등을 개발- 웹 페이지의 클라이언트 측 스크립트로 사용- HTML과 CSS와 함께 동작- 웹 페이지의 동적 기능을 구현 - Node.js를 통해 서버 측에서도 사용 가능실행 환경- Java Virtual Machine(JVM)에서 실행- 플랫폼 독립적인 언어입니다.- 웹 브라우저에서 실행- Node.js를 통해 서버 측에서도 실행가능문법과 선언- 모든 변수와 메서드는 타입 명시-..

[김영한_자바중급][6. 날짜와 시간] ChronoUnit / ChronoField 이해하기 (p.24-32)

ChronoField는 날짜나 시간의 특정 부분(예: 년, 월, 일)을 읽고 설정하는데 사용된다.ChronoUnit은 두 날짜 또는 시간 사이의 간격을 측정하거나, 날짜/시간에 간격을 추가할 때 사용된다.  [예시] ChronoField와 ChronoUnitLocalDateTime ldt = LocalDateTime.of(2024, 4, 25);LocalDateTime ldt2 = ldt.plusDays(10); // 10일 후의 날짜를 계산  ChronoField ChronoUnit예시*년도: ldt.get(ChronoField.YEAR) → 2024 *월: ldt.get(ChronoField.MONTH_OF_YEAR) → 4 *일: ldt.get(ChronoField.DAY_OF_MONTH) → 2..

[Java의 정석_기초편] 날짜와 시간 & 형식화_연습문제 10-2 (p.383)

[p.383] 무슨 요일인지 출력하는 프로그램 작성 import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; class Exercise2 { public static void main(String[] args) { String pattern = "yyyy/MM/dd"; DateFormat df = new SimpleDateFormat(pattern); Scanner s = new Scanner(System.in); Date indate = null; System.out.println("날짜를 " + pattern + "의 형태로 입력해주세요 ex. 2017/05..

[Java의 정석_기초편] 날짜와 시간 & 형식화_연습문제 10-1 (p.383)

[p.383] Calendar클래스와 SimpleDataFormat 클래스를 이용해서 2020년의 매월 두 번째 일요일 날짜를 출력 import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; class Exercise1 { public static void main(String[] args) { Calendar cal = Calendar.getInstance(); DateFormat df = new SimpleDateFormat("yyyy-MM-dd은 F번째 E요일입니다."); for (int i=0; i < 12 ; i++) { cal.set(Calendar...

Java/[문제해결] 2024.03.26