Java
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAVQUV%2FbtsAktmfTih%2F3ewpIS2rR7fKFUKC6LZmm0%2Fimg.jpg)
[Java] StringTokenizer
처음에 n 이라는 하나의 수를 입력받고 공백으로 나눠진 n개의 수를 입력받아 저장하는 경우에서 BufferedReader를 사용해서 입력받다보니 입력이 엔터로 구분되서, StringTokenizer를 이용해 공백으로 구분해 입력받으려고 했는데 .. ! 평소에 코드를 깔끔하게 정리하고 싶은 탓에 주로 선언하는 부분들은 코드 위쪽으로 몰아 쓰는 탓에 문제가 생겼다. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine(), " "); int n = Integer.parseInt(br.readLine()); int[] arr = new i..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyZlXy%2FbtsAmyt5fsM%2FKYeOYF6YWZYoJEFqJt1PA0%2Fimg.jpg)
[Java] length / length() / size() 차이
아직 자바 언어에 익숙치 않아서인지 코테 문제를 풀다가 length .. size 혼동해서 쓰는 경우가 많아서 정리해두려고 한다 ! 1. length ✔️ 배열의 길이를 알고자 할 때 ✔️ int[], String[] .. 2. length() ✔️ 문자열의 길이를 알고자 할 때 ✔️ String, StringBuilder .. 3. size() ✔️ 컬렉션프레임워크 타입의 길이를 알고자 할 때 ✔️ ArrayList, Set ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDeczu%2FbtsAeD4M1Dy%2FFBAskzZgQcerKZYjwmTAQk%2Fimg.jpg)
[PGS-Java] 기능개발(lv.2) - Math.ceil(), ArrayList ➡️ Array
프로그래머스 "기능개발(lv.2)" 문제를 풀었는데, 너무 코드를 길게 효율적으로 짜지 못한 것 같아 다른사람의 풀이를 보고 개선해보고자 한다 ! 일단 내 풀이는 다음과 같다. import java.util.*; class Solution { public int[] solution(int[] progresses, int[] speeds) { // 작업이 끝나기까지 남은 일 수 Queue q = new LinkedList(); for (int i = 0; i < speeds.length; i++) { int lastProgresses = 100-progresses[i]; if (lastProgresses % speeds[i] == 0) { q.add(lastProgresses/speeds[i]); } el..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLoHKS%2FbtsAnyAq9uq%2FWRtkFiryKOGGSqWohlCWi1%2Fimg.jpg)
[Java] Stack, toCharArray 사용
백준 9093을 푸는 과정에서 Java에서 Stack을 사용하는 방법에 대해 익히고, 앞선 BufferedReader와 BufferedWriter을 사용해보았다. 또한, toCharArray()라는 메소드를 사용해 보았다. ✔️ String.toCharArray() 문자열을 char형 배열로 바꿔준다 문제에서는 아래와 같이 BufferedReader로 받아준 문자열을 char형 배열로 바꿔주었다. String str = br.readLine() + "\n"; char[] arr = str.toCharArray(); ✔️ Stack 스택은 한쪽 끝에서만 자료를 넣고 뺄 수 있는 자료구조이다(LIFO) 직접 구현할 수 있지만 자바 Stack 라이브러리를 사용하는 방법도 있다. import java.util...
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcx29NS%2FbtsAjueKBmc%2FiWIDBwKr2BFFubtBSKRT6K%2Fimg.jpg)
[Java] 코딩테스트 입출력
보통 java에서 입출력을 위해 Scanner과 System.out 을 사용했는데, 속도 측면에서 BufferedReader와 StringBuilder나 BufferedWriter를 사용하는 것이 좋다고 해서 방법을 익혀두려고 한다 ! (입력된 데이터가 바로 전달되지 않고 버퍼를 거져 전달되므로 데이터 처리 효율성을 높임) ✔️ BufferedReader는 Enter만 경계로 인식, 받은 데이터 String으로 고정 ➡️ 입력받은 데이터 가공해야함 import java.io.*; import java.util.*; public static void main(String args[]) throws IOException { } // 예외처리 필요 BufferedReader br = new BufferedRe..