345(8)
1AB(16)
1 x 16^2 = 256
A(10) x 16^1 = 160
B(11) x 1 = 11
256+160+11 = 427(10)
10100(2)
단항연산자 ! ~ ++ -- size of
산술연산자 / % + -
시프트연산자 << >>
관계연산자 < <= >= > == !=
비트연산자 & ^ |
논리연산자 && ||
조건연산자 ? :
대입연산자 = += -= = /= %= <<= >>=
순서연산자 .

for(String str:arr){
System.out.println(str);
}
for(int i=0; i<arr.length; i++){
System.out.println(arr[i]);
}
char *s = "gilbut"
for (int i=0; i<6; i+=2){
printf("%c, ", s[i]);
printf("%c, ", *(s+i));
printf("%s, ", s+i);
}
i = 0 ) s+i = g *(s+i) = g s+i = gilbut
i = 2 ) s+i = l *(s+i) = l s+i = lbut
i = 4 ) s+i = u *(s+i) = u s+i = ut

lambda 변수명 : 수학식
def func(x):
return x * x - 3
print(func(10))
func = lambda x : x * x - 3
print(func(10))
tuple1 = (1, 2, 3)
tuple2 = 1, 2, 3
tuple3 = (1,)
tuple4 = (1)
range(최종값) 0에서 최종값 -1까지 연속된 숫자 생성
range(초기값, 최종값) 초기값 ~ 최종값 -1
range(초기값, 최종값, 증가값) 초기값 ~ 최종값-1 증가값 증가 및 감소
객체명[:] 또는 객체명[::] 객체의 모든 요소 반환
객체명[초기위치:] 초기위치에서 마지막위치까지
객체명[:최종위치] 객체의 0번째 위치에서 최종위치 -1까지
객체명[::증가값] 객체의 0번째 위치에서 마지막 위치까지 증가값만큼 증가하며 반환
| 메서드 | 설명 | 중복 검사 |
|---|---|---|
index(값) | 값이 처음 등장하는 인덱스 반환 | ✅ O |
count(값) | 값이 몇 개 들어 있는지 반환 | ✅ O |
sort() | 오름차순 정렬 (reverse=True로 내림차순) | ❌ X |
copy() | 리스트 복사 (얕은 복사) | - |
pop() | 마지막 요소 삭제하고 반환 | - |
append(값) | 리스트 끝에 값 추가 | ❌ X |
extend([값1, 값2]) | 리스트 끝에 여러 값 추가 | ❌ X |
len() | 리스트 길이 반환 | - |
push() | ❌ 존재하지 않음. 대신 append() 사용 | ❌ X |
set 메서드 (중복 자동 제거 O)중복을 막고싶다면 set() 이용
s = set()
s.add(1)
s.add(1)
print(s) # {1}
| 메서드 | 설명 | 중복 검사 |
|---|---|---|
add(값) | 집합에 값 하나 추가 | ✅ O |
update(이터러블) | 여러 값을 한 번에 추가 | ✅ O |
print(..., end=...)
print("Hello", end=" ")
print("World")
print(..., ..., sep=...)
print("Python", "Java", "C", sep=", ")
Python, Java, C
input(...).split(...)
data = input("이름과 나이를 입력하세요: ").split()
# 입력: Kim 23
print(data)
['Kim', '23']
대문자 A-Z : 65~90
소문자 a-z : 97~122

getchar() : 키보드로 한 문자를 입력받아 변수에 저장하는 함수
gets() : 키보드로 문자열을 입력받아 변수에 저장, enter를 누르기 전까지 하나의 문자열로 저장
putchar() : 인수로 주어진 한 문자를 화면에 출력하는 함수
puts() : 인수로 주어진 문자열을 화면에 출력한 후, 커서를 자동으로 다음 줄 앞으로 이동


제네릭(Generic)은 클래스 내부에서 지정하는 것이 아닌 외부에서 사용자에 의해 지정되는 것을 의미
public class ClassName <T> { ... }
public interface InterfaceName <T> { ... }
public class Main {
public static void main(String[] args) {
ClassName<Student> a = new ClassName<Student>();
}
}
class ClassName<E> {
private E element; // 제네릭 타입 변수
void set(E element) { // 제네릭 파라미터 메소드
this.element = element;
}
E get() { // 제네릭 타입 반환 메소드
return element;
}
<T> T genericMethod(T o) { // 제네릭 메소드
return o;
}
}
class Main {
public static void main(String[] args) {
ClassName<String> a = new ClassName<String>();
ClassName<Integer> b = new ClassName<Integer>();
a.set("10");
b.set(10);
System.out.println("a data : " + a.get());
// 반환된 변수의 타입 출력
System.out.println("a E Type : " + a.get().getClass().getName());
System.out.println();
System.out.println("b data : " + b.get());
// 반환된 변수의 타입 출력
System.out.println("b E Type : " + b.get().getClass().getName());
// 제네릭 메소드 Integer
System.out.println("<T> returnType : " + a.genericMethod(3).getClass().getName());
// 제네릭 메소드 String
System.out.println("<T> returnType : " + a.genericMethod("ABCD").getClass().getName());
// 제네릭 메소드 ClassName b
System.out.println("<T> returnType : " + a.genericMethod(b).getClass().getName());
}
}