개발 기록

개발 기록/JAVA

[JAVA] 문자열 비교 | 서로 같은 문자열인지 판단하기 | equals

public class StringCompare { public static void main(String[] args) { String s1 = "Hello JAVA!"; // s1 문자열 변수에 값 대입 System.out.println(s1 == "Hello JAVA!"); // true System.out.println(s1.equals("Hello JAVA!")); // true System.out.println(s1.equals("hello java!")); // false } } equals : String 문자열 클래스 안에 있는 메서드(기능) 문자열.equals(비교 문자열) 문자열은 대소문자 구분한다.

개발 기록/JAVA

[JAVA] 상수 | 변수의 상수화 | final | CONSTANT

상수 : 항상 유지되는 수 (변하지 않는 수) 변수의 상수화 : 변수에 저장된 값을 변경하지 않고 상수처럼 사용함 변수를 상수화시키면 초기화 이후 값을 바꿀 수 없다. 상수화 방법 final 자료형 변수명 = 값; 상수의 변수명은 모든 글자를 대문자로 쓰는 게 좋다. 개발자들 간의 예의이자 약속 public class Prca { public static void main(String[] args) { int a = 3; a = 4; // 변수이니 가능 final double PI = 3.14; PI = 3.15; // 상수이니 불가능 } }

개발 기록/JAVA

[JAVA] 자바의 형변환

형변환 : 변수나 상수의 데이터 타입을 다른 타입으로 변환하는 것 형변환의 종류 - 자동 형변환 (묵시적 형변환) : 자동으로 타입이 변환되는 것 - 강제 형변환 (명시적 형변환) : 코드 상 강제로 형식을 변환시키는 것 강제형변환 방법 (자료형)변수명; public class DataType { public static void main(String[] args) { int a = 65; float f = a; // 자동형변환 System.out.println(f); char c = (char)a; // 강제형변환 (명시적 형변환) System.out.println(c); // 참고 // 컴퓨터는 문자를 저장할 수 없다 // 따라서 문자마다 고유한 숫자값을 부여했는데 // 그 숫자가 바로 문자의 아스키..

개발 기록/JAVA

[JAVA] 자바의 자료형 | DATA TYPE | BIT와 BYTE

자료형 : 자료(data)가 가질 수 있는 정수, 실수, 문자 논리 등 형식 자료형 바이트(Byte) 예시 정수형 int, long, short 4, 8, 2 1, 0, -1, 2, 100 실수형 float, double 4, 8 3.14f, 3.14 문자형 char 2 'a', 'A' 문자열 String (문자열 길이에 따라 달라짐) "hello", "A" 논리형 boolean 1 true, false public class VarTest { public static void main(String[] args) { // 정수형 변수 int i = 100; // 실수형 변수 float f = 3.14f; double d = 3.14; // 문자형 변수 char c = 'a'; // 문자열 변수 Strin..

개발 기록/JAVA

[JAVA] 변수명 작성하기 | 헝가리안 표기법 , 카멜 표기법 , 파스칼 표기법

변수명을 작성할 때 유의사항 - 숫자로 시작할 수 없다 - 특수문자 사용이 불가능하며,$와 _만 가능하다 - 대소문자를 구분한다 - 이미 사용하고 있는 예약어는 사용할 수 없다. 변수명 작성 방법의 종류 - 헝가리안 표기법 : 변수에 자료형을 구분할 수 있는 접두사 달아 표기 ex) int num; --> int iNum; - 카멜 표기법 : 두 개 이상의 단어가 사용될 경우, 두 번째 단어의 시작은 대문자. (마치 낙타(카멜) 등처럼) ex) int newName; - 파스칼 표기법 : 클래스명 작성시, 모든 단어의 첫 글자를 대문자로 ex) class MyClass

개발 기록/C Language

[C언어] 포인터가 대체 뭔데? / 쉽게 이해하는 포인터(Pointer)의 개념

(지금 포인터란 개념이 어려워도 스트레스 받지 말자. 많이 접하다 보면 익숙해진다.) ​ 포인터란 무엇일까? 일상생활에서의 포인터는 어떤 화면을 가리키는 불빛이 나오는 물건 등으로 생각할 수 있다. 프로그래밍에서도 같은 의미로 쓰인다. 다시 말해, 프로그래밍에서 포인터는 '어떤 변수를 가리키는 변수'이다. ​ 그럼 가리킨다는 의미란 무엇일까? 손가락도 없는데 어떻게 가리킨다는 것일까? 이를 알기 위해서는 주소값이란 개념을 알아야 한다. ​ 모든 변수는 자체의 값만이 아니라, 주소값도 가지게 된다. 변수의 주소값은 컴퓨터에 의해 임의로 정해진다. 우리는 주소값을 이용하여 어떤 변수를 가리키게 하고, 한 변수의 값을 다른 변수로 바꿀 수 있다. ​ 주소값을 이용해서 어떤 변수를 가리키게 하기 위해 우리는 포..

개발 기록/C Language

[C언어] 문자열에서의 널 문자 (NULL)

#include int main(void) { char str[] = "Hello World!"; printf("str = %s\n", str); printf("str의 크기 : %d\n", sizeof(str)); // 왜 13이라고 나올까? printf("%d\n", sizeof("Hello")); // 왜 6이라고 나올까? return 0; } 위 코드에서 str의 크기는 왜 13이 나오고 Hello의 크기는 왜 6이 나올까? 그 답은, 항상 문자열의 끝에는 우리가 원하지 않아도 널 문자란 것이 붙기 때문이다. ​ null 문자는 말 그대로 빈 문자란 뜻이다. 문자열 배열에서 null ( '\0' ) 문자는 문자열의 끝을 알기 위해서 쓰는 것이다. #include int main(void) { ch..

개발 기록/C Language

[C언어] Sleep함수, system함수, clock함수, _kbhit함수 알아보기

Sleep() 말 그대로 정해진 시간동안 잠자게 하는(?) 함수 일정 시간동안 프로그램을 정지시킬 때 사용하는 함수 windows.h헤더파일 안에 있다. ms(밀리세컨드) 단위이기 때문에 1초를 정지시키기 위해서는 Sleep(1000) 으로 입력해야 한다. #include #include #include < int main(void) { while (1) { printf("hello!\n"); Sleep(1000); } return 0; } tmi 이 함수가 왜 C언어에서 time.h 헤더파일에 있지 않고 windows.h 헤더파일에 포함되어 있느냐? 그 이유는 "Sleep함수는 C언어의 런타임 함수가 아닌 Windows 운영체제의 API 함수이기 때문이다."라고 설명할 수 있다. system() 시스템..

개발 기록/C Language

[C언어] 숫자 뒤집기 / 반환값 있는 함수 이용 / Reverse

#include int Reverse(int num) { int rev = 0; while (num != 0) { rev *= 10; rev += num % 10; num /= 10; } return rev; } int main(void) { int n; scanf("%d", &n); printf("%d\n", Reverse(n)); return 0; }

개발 기록/C Language

[C언어] gets fgets / 쉽게 이해하는 문자열 입력 함수

gets()와 fgets() 함수는 말 그대로 문자열을 입력받는 함수이다. ​ "입력받을 땐 scanf 함수를 쓰면 되지, 왜 굳이 저 함수를 쓰는 것일까?" scanf( ) 를 이용해 문장을 입력받으면, 첫 번째 단어까지만 저장되지만 gets( )와 fgets( ) 를 사용하면 공백문자가 포함되어있는 문장을 입력받아 저장할 수 있다. ​ 무슨 뜻이나면, Hello World!를 scanf로 입력받으면 사실상 Hello 까지만 입력된다. 하지만 gets와 fgets는 Hello World! 문장이 전체 입력된다. "위 두 함수의 차이는 무엇일까?" ​ gets()를 쓰면 확실히 문장 구성은 간단하지만, 마련해놓은 배열의 길이를 넘어서면 할당 받지 않은 메모리 공간을 침범할 수도 있다. 그래서 가급적이면 ..

개발 기록/C Language

[C언어] 배열에서 순차적으로 최댓값과 최솟값 구하기

#include int main(void) { int arr[5] = {12, 44, 34, 76, 18}; int max,min; max = arr[0]; min = arr[0]; for(int i = 0; i max) max = arr[i]; if(arr[i] < min) min = arr[i]; } printf("최댓값 : %d\n",max); printf("최솟값 : %d\n",min); return 0; }

우준성
'개발 기록' 카테고리의 글 목록 (7 Page)