전체 글(27)
-
StringBuilder란?
1. StringBuilder의 탄생 배경 String형 객체 s1과 s2라는 객체가 있으면, s1+s2를 실행하면, 새로운 string을 생성한다. 이런 과정이 반복되면, 메모리에 안 좋은 문제를 야기한다. 그래서 나온 것이 StringBuilder와 StringBuffer다. 2.StringBuilder란? StringBuilder는 문자열과 문자열을 더할 때 새로운 객체를 생성하는 것이 아니라 기존의 데이터에 더하는 방식을 사용하기 때문에 속도도 빠르며 상대적으로 부하가 적다. 3. StringBuilder와 StringBuffer의 차이 string 객체는 한번 값이 할당 되면 그 공간은 변하지 않습니다. 하지만, Stringbuilder나 StringBuffer 객체는 한번 값이 할당되더라도 한..
2024.04.20 -
java Math 클래스
1. Math 클래스란?Math 클래스는 java.Lang 패키지에 포함된 클래스로 수학과 관련된 일련의 작업들을 처리할 수 있는 클래스입니다. Math 클래스의 다양한 메소드들은 전부 static으로 구현되어 있으므로 따로 객체를 생성하지 않고 사용할 수 있습니다. 2.abs() 메소드Math 클래스의 abs() 메소드는 인자로 넘긴 데이터의 절댓값을 반환해줍니다. 전달된 값이 양수이면 전달된 값 그대로 반환합니다. public class p { public static void main(String[] args) throws IOException{ Scanner sc = new Scanner(System.in); int a = sc.nextInt..
2024.04.19 -
BufferReader와 Scanner의 차이
1. BufferReader란? 데이터를 한번에 읽어와 버퍼에 보관한 후 버퍼에서 데이터를 읽어오는 방식으로 동작하는 클래스이다. 즉 사용자가 입력한 문자 스트림을 읽는 것(read) 라고 한다. ※버퍼란? 데이터를 한 곳에서 다른 한 곳으로 전송하는 동안 일시적으로 해당 데이터를 보관하는 임시 메모리 영역이다. 주로 입출력 속도 향상을 위해 버퍼를 사용한다. JAVA에서는 버퍼를 BufferedReader와 BufferedWriter라는 클래스를 제공합니다. BufferedReader의 특징 java.io 패키지에 속한다. (import java.io.BufferedReader) 데이터를 파싱하지 않고 String으로만 읽고 가져온다. -> 만약 int나 long형의 자료형을 이용하고 싶으면 버퍼의 사..
2024.04.18 -
백준 2884 (알람 시계)
아래는 문제를 풀기위한 코드입니다. 먼저 코드의 풀이 과정을 설명 드리면, 1. 먼저 분과 시의 값을 입력 해서 받을 변수 두 개를 선언합니다. 2. 그리고, 분이 45보다 적을 때의 경우와 시가 0보다 작을 경우에는 23으로 시를 지정합니다. 참고로 분을 45분 전으로 구하는 공식은 두가지로 나뉘는데, 45보다 분이 작을 때 60- (45-분(M)) 45보다 분이 클 때 분(M) - 45로 하면 됩니다. 3. 그리고, 45보다 적을 때와 시가 0보다 작을 경우가 아닌 그 외의 경우를 아까 언급 45보다 분이 클 때를 적용합니다. import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; imp..
2024.04.17 -
(java) charAt란?
1. charAt란? String 타입의 데이터(문자열)에서 i번째 문자를 char 타입으로 변환할 때 사용하는 메소드 "HELLO" 라는 문자열을 입력받았다고 할 때,Scanner sc = new Scanner(System.in); // HELLO 입력String str = sc.next(); // 입력된 문자열 str에 저장System.out.println(str.charAt(1));// HELLO 중 1번째 문자 출력 -> ESystem.out.println(str.charAt(3));// HELLO 중 1번째 문자 출력 -> L2.charAt의 또 다른 활용법Scanner sc = new Scanner(System.in);int num = sc.nextInt(); // 입..
2024.04.15 -
(Java) next() 시리즈
1. next() 란? Scanner 클래스의 메소드이다. 2. nextLine()과 next의 차이-> 여기서, next() 와 nextLine의 차이를 알면,nextLine()메소드는 Enter를 치기 전까지 쓴 문자열 모두 반환한다는 것이고next()메소드는 공백(space) 전까지 입력받은 문자열을 반환한다는 것이다. 아래 코드를 보시면 이해가 빠를 것입니다.Scanner sc = new Scanner(System.in);String nextLine = sc.nextLine();//입력 받은 값 중 나머지 한가지를 num2로 지정 받음 String next = sc.next();System.out.println("nextLine 값 "+nextLine+ "next 값 "+n..
2024.04.15