팀노바(기초과정)에서 공부를 하면서, 받았던 피드백이다. 다음의 나쁜 습관을 고치기 위해서, 의식적으로 노력해야 겠다. - 코드의 반복이 많다 - 코드확장을 막 한다 - 어떤 기술을 쓸때, 어떤 이점이 있는지 고민하지 않는다. 막쓴다. - 과제에 적합한 노력을 하지 않는다. 곁다리에 신경쓴다. (인정욕구 ↑) - 학습 우선순위를 먼저 생각하지 않는다 - 과제를 할때, 어떻게 공부를 할지 멘토링 받고 설계하지 않는다. - 메소드를 여러개 이곳 저곳에 쓴다 - 된다, 안된다는 것을 기준으로 판단해서 과제 목표에 정확히 타깃하지 못한다 - 도파민형 인간이라 추진력이 좋지만, 성실함이 부족하다 - 무관심한 영역에는 취약하다 - 평가에 대해 예민하다 - 상대 팀원을 잘 관찰하고 흡수하려는 노력이 없다 - 처음 본..
Java
enum 클래스, List 클래스 및 Map 클래스는 모두 Java 프로그래밍에서 데이터를 구조화하고 조작하는 데 사용되는 클래스들입니다. 공통점 데이터 저장 및 관리: 모두 데이터를 저장하고 조작하는 목적으로 사용됩니다. 컬렉션: 모두 컬렉션 프레임워크의 일부로서, 여러 개의 값을 다루는 데 도움을 줍니다. 차이점 Enum 클래스 enum 클래스는 고정된 값의 집합을 나타내는데 사용됩니다. 보통 상수 값을 표현하기 위해 사용되며, 값이 제한된 경우에 유용합니다. enum 클래스의 각 요소는 해당 열거 타입의 유일한 인스턴스입니다. switch 문에서 사용할 때 코드의 가독성을 높일 수 있습니다. enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRI..
객체참조 //참조형 //c2 = c1 ; c2가 c1의 풍선(값)을 가리킨다. c1과 값을 공유한다 System.out.println("____________"); Camera c1 = new Camera(); Camera c2 = new Camera(); c1.name = "카메라1"; c2.name = "카메라2"; System.out.println(c1.name); System.out.println(c2.name); c2 = c1; //c2가 c1의 값을 grab!!! c2와 c1이 값을 공유 System.out.println(c1.name); System.out.println(c2.name); c2.name = "고장난 카메라"; //c2만 바뀌어도 c1 값이 바뀜. 왜냐? 값을 공유하니까! Sy..
여러 그림을 보아도 이렇다할 규칙을 찾기 어려웠다. 그래서 그냥 원의 방정식을 사용해서 내부에 있는 점들만 *로 나올 수 있도록 했다 1. 입력값 = 반지름 입력값은 정수로 받는다 입력값이 커질수록 반지름이 커져 원의 범위가 넓어지는 형태 2. 일단 사각형을 작성하였다. for (int i = -r; i
풀이방법 1. 변곡점 기준으로 도형을 자른다 2. 위 삼각형의 너비길이를 기준으로, 아래 삼각형의 너비길이를 구한다. 3. 주의 ! - 두번째 반복문식에서는 i와 관련있는 식을 쓸것, 그렇지 않으면(만약 number 기준) 사각형이 만들어짐 import java.util.Scanner; public class 마름모 { public static void main(String[] args) { int number = scan.nextInt();// 스캔값이 1일때 그냥 *이 나오는 것을 피하고 싶다면 +1을 해도 좋다 int number = scan.nextInt(); int maxWidth = 2 * number -1; //1. 위 삼각형 for (int i = 0; i < number; i++) { f..
자바의 입력기능(Scanner) 자바에서 데이터를 출력하는 명령은 System.out이고, 데이터를 입력받을때는 System.in을 이용합니다. 데이터를 입력받을때는 표준 JAVA API인 Scanner 클래스를 사용합니다 스캐너 사용방법 0. import java.util.Scanner; 1. 스캐너 객체 생성 Scanner scan = new Scanner(System.in); 2.입력받을 데이터 타입에 따른 메서드 호출 scan.next(), scan.nextLine(), scan.nextInt(), scan.nextDouble() 등 -next(): 공백을 포함하지 않는 문자열을 입력받을 때 -nextLine(): 공백을 포함한 문자열을 입력받을 때 -nextInt(): 정수를 입력받을 때 -ne..
명시적 형변환과 묵시적 형변환은 반대 개념입니다. 자동형변환(묵시적 형변환 Implicit Casting) 작은 데이터 타입에서 큰 데이터 타입으로 값이 자동으로 형변환되는 것을 말합니다. 이때 데이터의 손실이 없거나 무시할 수 있는 경우 등이 해당됩니다. ex) 큰 바구니에 작은 사과를 담는 경우 자동으로 상수부분이 float => double로 자동 형변환이 일어납니다. 더 큰 데이터 타입인 double이 더 작은 데이터 타입인 float 보다 표현범위가 크므로, 변수에 정보손실 없이 값을 저장할 수 있다. 명시적 형변환(Explicit Casting) 큰 데이터 타입에서 작은 데이터 타입으로 값이 변환되는 것을 의미합니다 이때 명시적으로 변환 연산자를 사용해야 합니다! 이때는 데이터 손실이 일어날 ..
변수도 데이터 타입이 있고, 상수도 데이터 타입이 있다. 여러분이 어떤 실수를 쓰려고 하면, 기본적으로 double을 쓰고, 만약 float를 쓰고 싶다면 F를 붙여주면 된다. (주의!, 아래 예제들은 좌항과 우항의 데이터 타입이 일치하기 때문에 명시적 형변환도 묵시적 형변환도 아니다. F라는 문자를 붙여주어서, 2.2F가 float 타입이라고 명시해주어서 데이터 타입을 서로 맞춰주었다. 🔍 F를 붙인 이유는? 이유: 2.2가 사실은 정확히 2.2가 아니고, 이진법으로 변환했을때 무한소수로 끝없이 이어지는데, 그 무한소수가 float 유효범위안에 들어오지 않기 때문에, 원래 상수 2.2의 데이터 타입은 double이다. 하지만 의도적으로 float 데이터 타입을 상수 2.2에 쓰고 싶어서 F를 붙여서 좌..