[Java] Record 클래스 란?
·
Backend/Java
Intro자바를 배울 당시 대부분 강의들이 Java 8, 11 버전으로 되어 있어서 데이터를 이동시킬 때 RequestDto와 ResponseDto 클래스를 만들어 사용하는 방법들을 배웠었는데, 2년 사이에 자바 버전 점유율이 많이 바껴서 알아가며 작업할 겸 Java 17로 하던 중 Record 클래스를 알고 난 뒤 부터 굳이 DTO 클래스를 만들어서 @Getter, @Setter, @Allargument 등 을 추가할 필요없이 Record 클래스로 만들어서 관리를 하게 되었는데 'Record의 기능이 이게 끝인가?' 라는 생각에 알아볼려고 한다.Record 클래스란?등장 배경Java 14에서 preview 기능으로 시작하여 Java 16때 정식으로 도입된 Record는 데이터 운반 클래스를 보다 명확하..
[Java] Scanner와 BufferedReader
·
Backend/Java
1. Scanner 클래스:Scanner 클래스는 간단한 텍스트 스캐닝을 위한 메소드를 제공이 클래스는 공백을 기본 구분자로 사용하여 입력된 토큰을 분리Scanner 클래스는 다양한 데이터 타입을 처리할 수 있습니다. 예를 들어, nextInt(), nextDouble(), nextLong() 등의 메소드를 제공하여 특정 타입의 데이터를 직접 읽어들일 수 있습니다.하지만, Scanner 클래스는 내부적으로 정규 표현식을 사용하기 때문에, 대용량 데이터를 처리하는데는 비효율적일 수 있습니다.2. BufferedReader 클래스:BufferedReader 클래스는 문자 입력 스트림에서 문자를 버퍼링함으로써 문자, 배열, 라인을 효율적으로 읽을 수 있도록 합니다.이 클래스는 기본적으로 문자열 데이터만 읽을 ..
[KDT] 신세계I&C Java과정 2주차 과제를 하며
·
ETC
강사님이 이번주 과제들을 미리 내주셔서 '빠르게 풀고 다른 공부를 해야지' 라는 생각으로 문제들을 풀다가 마지막 파스칼 삼각형 문제에서 문득 스트림을 사용하면 어떻게 구현해야하지? 라는 생각이 들어 다시 풀어볼려고 마음먹었다. 처음에는 '스트림을 이중으로 사용하여 forEach안에서 i와 j의 값을 잘 계산하면 되겠지?' 라고 아주 단순하게 생각했었지만 생각만큼 쉽게 풀리지 않았다. #### for문을 이중으로 사용하여 값들을 배열에 넣는 식으로 구현한 파스칼 삼각형 코드 ``` public static void main(String[] args) {     int[][] arr = new int[n][n];     arr[0][0] = 1;     for (int i = 1; i arr[i][0] = ..
[Java] Scanner 클래스 next() 와 nextLine()
·
Backend/Java
Java에서 Scanner 클래스는 'java.util' 패키지의 일부이며 콘솔, 파일 또는 문자열과 같은 다양한 소스에서 입력을 얻는 데 사용되며, 기본 데이터 유형과 문자열을 구문 분석하고 처리하는 방법을 제공합니다.Java에서 Scanner 클래스의 메소드는 아래와 같은 종류들을 주로 사용하고있는데, 3번부터 8번까지의 메소드는 next() 메소드와 함께 사용하여 입력된 문자열을 해당 타입으로 변환하는 역할을 합니다.예를 들어, nextInt() 메소드는 next() 메소드로 입력된 문자열을 int로 변환하여 값을 반환합니다. 이와 같은 방식으로 다양한 데이터 유형을 처리할 수 있습니다.(char 타입은 별도의 메소드가 없으므로, next() 메소드로 문자열을 입력받고,charAt() 메소드를 사용..
[KDT] 신세계I&C Java과정 2주차 Test를 치며
·
ETC
저번주에 예고하셨던데로 테스트를 쳤다. 사실 어제 시험치신다고 하였지만 안치고 수업이 끝나 테스트가 없는건가?라고 생각하였는데 오늘 치게되었다. 문제는 람다식으로 변경하는 간단한 문제 1개, 반복문 기초문제 6개, 그리고 정수를 입력받아 반복하며 조건문을 사용하는 문제 2개 총 9문제를 30분안에 해결해야했다. 반복문(별그리기) 문제에서 순간 생각이 막혀서 시간을 조금 소비하였지만 무리없이 9번 문제까지 다 풀었는데 갑자기 뒤에서 "Exception 처리 할 수 있으면 해도되요."라는 이야기가 들렸고 8번 9번 문제는 조건문을 때려박으면 안되고 예외처리까지 해줘야하는구나 라는 생각에 코드를 수정하기 시작하였는데 9번문제를 예외처리하며 수정하는 중에 시간이 부족하여 코드를 급하게 복원하여 제출하게 되었다...
[KDT] 신세계I&C Java 과정 1주차를 하며
·
ETC
현재 수업 내용이 자바 변수의 종류, 반복문, 조건문등을 배우는 중이라 이미 알고있는 내용이라 수업에 참여를 하지않고 주변사람들을 도와주며 개별적으로 학습을 하다가 강사님이 실습한 내용을 제출하라고 하여 코드를 짜다가 급발진하여 아래오 같이 코드를 작성하게 되었다.문제는 아래와 같다.실습. 학생의 이름을 입력받고 , 해당 학생의 국어, 영어, 수학, 과학 4과목의 점수를 입력받아 총합과 평균을 구한 후출력 : 000 학생의 국어: 점수, 영어: 점수 , 수학: 점수, 과학 : 점수 출력 000학생의 총점은 00, 평균은 00.0 입니다.첫 번째 제출한 코드Scanner sc = new Scanner(System.in);String[] 과목들 = {"국어", "영어", "수학"..
[Java] 클래스, 추상클래스, 인터페이스
·
Backend/Java
No.질문 리스트1.클래스(Class)란 무엇인가?2.객체(Object)란 무엇인가?3.인스턴스(Instance)란 무엇인가?4.추상클래스와 인터페이스 개념 및 공통점과 차이점 비교5.인터페이스를 이용한 다형성을 예시클래스(Class)란 무엇인가?클래스를 프로그래밍적 언어로 표현하자면 어떠한 객체의 변수 , 메소드의 집합이라고 표현할수있으며, 현실세계에 빗대어 말하자면 동일한 속성과 행위를 수행하는 객체의 집합객체(Object)란 무엇인가?클래스를 통해서 정의된 내용으로 실제로 데이터가 들어있는 독립적인 단위인스턴스(Instance)란 무엇인가?실제 메모리에 할당되어있는 것추상클래스와 인터페이스 개념 및 공통점과 차이점 비교 추상클래스인터페이스개요하나 이상의 추상 메소드를 포함한 클래스모든 메소드가 추상..
[Java] 반복문 for문을 사용한 별 피라미드 찍기 ver.2
·
Backend/Java
Intro프로그래밍을 배우기 시작하면 조건문과 반복문을 배우게 되는데, 반복문 입문 문제 중에서 최종 난이도는 별 찍기라고 생각힌다.별 찍기란 빈칸을 몇칸을 어떻게 할지 뛰우느냐에 따라서 정삼각형, 역삼각형, 피라미드, 다이아몬드 모양으로 출력할 수 있는데 처음 프로그래밍을 배우는 입장에서는 생각보다 어려워하는 사람이 많은거 같다.기본기본 삼각형삼각형 패턴 중 가장 간단한 형태로, 첫 줄에는 별이 하나, 두 번째 줄에는 별이 두 개가 출력됩니다.public static void printTriangle(int rows) { for (int i = 1; i 역삼각형역삼각형 패턴은 기본 삼각형의 반대 형태로, 첫 줄에는 별이 n개, 마지막 줄에는 별이 하나 출력됩니다.public static void ..