DevelopmentTools/Java15 [java] next(), nextLine() 차이점 한 개의 문장을 입력 받아 그 속에 가장 긴 단어를 출력하는 코딩테스트 문제를 풀던 중 알고리즘 적으론 문제가 없는데 계속해서 제출하면 오류가 났다. 그 오류의 원인은 문장을 Scanner로 입력받는 곳이었다. 바로, Scanner의 입력을 next()로 받아서 발생한 문제였다. nextLine()으로 고치니깐 문제는 바로 해결되었다. 항상 헷갈리던 이론이라 이 김에 확실하게 정리하고 넘어가려 한다. next(), nextLine() 공통점 String 타입으로 반환한다. Scanner 클래스의 메소드 next(), nextLine() 차이점 nextLine()은 Enter(개행문자)를 치기 전까지 쓴 문자열을 모두 반환한다. 한 줄 단위로 입력을 받기에 \n도 포함한다. 분리자 개행문자 \n이 버퍼에 .. 2023. 2. 3. [java] 코딩테스트 문법 정리 Long 타입 to int 타입=> intValue 메서드 사용 Long x = 11L; int i = x.intValue(); substring 메소드 : 문자열에서 원하는 부분을 추출 할 때 사용 기본구조 문자열.substring(문자열 시작 번호, 문자열 끝낼 번호) 단, 끝나는 범위의 수는 포함되지 않는다. 즉 1번째에서 3번째까지 읽어들이고 싶다면 substring(1,4)로 해줘야 3번째까지 읽어들임. String str = "abcd"; System.out.println(str.substring(1,2)); // 결과: bc * 그 외에 문자열을 다루는 java 메서드 charAt, indexOf 참고: http://www.dreamy.pe.kr/zbxe/CodeClip/3766960 JAV.. 2022. 8. 31. [programmers-java 중급] 쓰레드(Thread) 쓰레드(Thread) : 동시에 여러가지 작업을 수행할 수 있게 하는 것 자바 프로그램은 JVM위에서 실행되며 JVM도 하나의 프로그램 하나의 프로세스(현재 실행되고 있는 프로그램, Process)안에서 여러개의 흐름(Thread)이 발생할 수 있다. 자바 프로그램이 여러 개의 작업을 동시에 작업하도록 하려면 Thread를 이용해야 한다. 자바에서 Thread 만드는 방법 Thread 클래스를 상속받는 방법 Runnable 인터페이스를 구현하는 방법 Thread 클래스를 상속받아 Thread 만들기 java.lang.Thread 클래스 상속받기 해당 Thread 클래스가 가지고 있는 run() 메소드를 오버라이딩 ex) Thread 클래스.. 2022. 7. 21. [programmers-java 중급] 람다식(Lambda) 람다식 ( = 익명메소드 ) 메소드를 하나만 가진 인터페이스 함수형 인터페이스 ex) Thread 생성할 때 사용하는 Runnable 인터페이스 => run() 메소드 하나만 가짐 public class LamdaExam1 { public static void main(String[] args){ new Thread(new Runnable() {public void run() { for(int i=0; i 생성자 안의 run() 메소드 실행 자바는 메소드를 매개변수로 전달할 수 없다. 객체만 전달이 가능하다. 그렇기 때문에 run() 메소드를 가진 Runnable 객체를 만들어서 전달한다. => 메소드를 매개변수로 전달할 수 있다면 매번 객체를 생성해서 전달하지 않아도 된다. 바로 람다표현.. 2022. 7. 21. [programmers-java 중급] 어노테이션(Annotation) Java5에서 추가된 기능 어노테이션 (Annotation) 클래스 or 메소드 위에 붙여 사용 Ex) @Override 소스코드에 메타코드(추가정보)를 주는 것 클래스가 컴파일되거나 실행될 때 어노테이션의 유무나 어노테이션의 설정 값을 통하여 클래스가 다르게 실행될 수 있다. 위의 이유로 어노테이션을 설정파일처럼 설명하는 경우도 존재 자바가 직접 제공하는 어노테이션과 사용자가 직접 생성하는 어노테이션이 존재 제공되어지는 어노테이션을 이용하는 경우가 더 많을 것 사용자가 직접 생성하는 어노테이션: Custom 어노테이션 커스텀 어노테이션을 이용하는 방법 1. 어노테이션 정의 패키지 익스플로러 - new - Annotation 정의한 어노테이션을 JVM 실행시에 감지할 수 있도록 @Retention(Ret.. 2022. 7. 18. [programmers-java 중급] IO I는 Input, O는 Output 자바 IO Byte 단위 InputStream 추상클래스를 상속받아 사용 FileInputStream (파일로 부터 입출력받기 위한 클래스 4가지) ByteArrayInputStream (배열로 부터 입출력받기 위한 클래스 4가지) DataInputStream (다양한 데이터 형을 입력받고 출력하는 클래스) OutputStream 추상클래스를 상속받아 사용 OutputStream ByteArrayOutputStream DataOutputStream (다양한 데이터 형을 입력받고 출력하는 클래스) Char 단위 ( Reader, Write로 이름이 끝난다 ) Reader 추상클래스를 상속받아 사용 FileReader CharReader BufferedReader (한 줄.. 2022. 7. 17. 이전 1 2 다음