JAVA 18

JAVA 입력과 출력(Scanner, BufferedReader..)

알고리즘 문제를 풀다보면 입력을 받아서 정답을 출력하게 작성해야하는데 그때 사용할 수 있는 Scanner와 BufferedReader를 이용한 입출력을 정리해보려고 한다. 먼저 속도적인 면으로는 BufferedReader가 Scaaner에 비해 훨씬 빠른데, 보통 JAVA를 처음 접할떄 입력은 Scanner로 배우기 때문에 조금은 생소할수도 있다. 각설하고 코드로 확인해 보면 다음과 같이 사용할 수 있다. 1234567891011121314151617181920212223242526272829303132333435363738import java.io.*;import java.util.Scanner; public class Main { public static void main(String[] args) ..

JAVA 2020.12.17

JAVA에서 리스트안의 원소를 중복제거하는 방법?

개발에서 중복되는 데이터를 제거하는 작업은 빈번하게 일어나게 되는데, 그때 어떤 방법을 이용해서 중복을 제거할 것 인가가 항상 고민이였다, 그래서 활용가능한 방법들을 간단하게나마 정리하려고 한다. 먼저 리스트안의 중복을 제거하는 방법은 몇 가지가 있는 것 같은데, 대표적으로 아래와 같은 방법이 있는 것 같다. 1. for문을 이용해 리스트를 순회하며 제거(contains를 이용 or 변수를 이용) 2. Set자료형을 이용하여 중복을 제거 3. Stream의 distinct를 이용하는 방법 이외에 다른 방법이 더 있을 수도 있겠지만, 당장 생각나는 방법만 정리하려고 한다. 백문이불여일견이라고, 코드를 통해 정리 하면 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ..

JAVA 2020.11.04

JAVA에서 ..parameter???? (가변인자)

최근 개발을 하다가 stack overflow 글을 보다가 특정 메소드에서 String ...data라는 방법으로 파라미터를 전달하는 코드를 보게 되었는데, 여태까지 그렇게 파라미터를 전달하는 것은 처음 봤기때문에 한번 공부도 할겸, 정리도 할겸해서 정리해보려고 한다. 먼저 가변인자는 JAVA 1.5이상 버전부터 사용가능하다고 하고, (데이터타입 ...변수명)으로 작성함으로 써 가변인자를 사용할 수 있는데, 가변인자를 통해 변수를 전달하면 컴파일러는 내부적으로 배열을 생성한다고 한다. 12345678910111213public class Test { public static void main(String [] args) { new Test().sum(1,5,8,99); } public void sum(i..

JAVA 2020.08.25

HttpResponse와 Unirest를 이용한 외부 데이터 요청

최근 개발하면서 외부 API를 이용해서 데이터를 요청해야할 일이 생기게 되어 HttpResponse와 Unirest를 사용해서 개발을 해보았는데, 오늘은 그 내용을 정리해보려고 한다. 일단, 회사에서 개발한 내용이였고, 기본적인 maven에 dependency설정은 잡혀있는 상태로 개발을 했는데, Spring으로 개발을 하고 maven을 이용해서 프로젝트 관리를 하고있다면 pom.xml에 다음 내용들을 추가해주면 된다. com.mashape.unirest unirest-java 1.4.9 org.apache.httpcomponents httpasyncclient 4.1.3 org.apache.httpcomponents httpmime 4.5.8 org.apache.httpcomponents httpcor..

JAVA 2020.06.17

JAVA 문자열 자르기 2 (substring 사용법)

문자열을 잘라서 사용하는 방법에는 여러가지가 있지만, 그 중에서 접근성이 높은건 Split이나 substring이 아닐까 싶다. 저번글에서는 split을 정리했으니까, 오늘은 substring을 정리해보고자 한다. 일단 API문서에는 substirng이 이렇게 정리되어있다. 대충 String을 받아서 String을 리턴한다고 설명하는 것 같다. 글로 보는것보다는 코드로 보는게 빠를 것 같아서 간단한 예제 소스를 준비했다. 예제소스는 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 public void subStr() { String time = "2020-05-01 23:59:59"; //substring의 첫 번째 인자는 시작점, 두 번쨰 인자는 종점(마지막) 입니다. String result..

JAVA 2020.06.02

JAVA 문자열 자르기(split)

오늘은 문자열 시리즈 두번쨰인 split에 대해서 간단명료하게 정리해보고자한다. 먼저 split 메서드는 String형의 자료를 특정조건으로 잘라준 뒤 배열로 리턴해주는 기능을 한다. 사용법을 코드로 보자면 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Test { public static void main(String[] args){ String a = "1, 2, 3, 4, 5, 6, 7"; String[] result = a.split(","); //컴마(,)를 기준으로 문자열 분리 for(int index = 0; index

JAVA 2020.04.17

JAVA 문자열 치환(replace ) 사용법 정리

Java에는 문자열(String)에서 특정문자 치환해줄 수 있는 기능을 제공하는 replace함수를 제공한다. 코딩테스트나 실무에서도 유용하게 사용되는 함수이니 꼭 알아두는게 좋을 것 같다. 종류에는 replace, replaceAll, replaceFirst가 있는데, 사용법은 코드를 통해 알아보자. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 public void replaceTest() { // ","를 "/"로 치환 String target = "딸기,토마토,수박,사과,배,포도"; String result = target.replace(",", "/"); System.out.println(result); //결과 = 딸기/토마토/수박/사과/배/포도 S..

JAVA 2020.03.25

JAVA의 for each문

학부에서 코딩을 하는게 아닌, 현업에서 개발을 하다보니 for문보다는 for-each문을 더 자주 사용하게 되었는데, 내가 for-each문에 대해 잘 알고쓰는게 아닌 것 같아서 간단하게나마 정리해보고자한다. 먼저 for-each문은 Java5에서 추가되었고, 기존 for문과는 다르게 반복문 안의 요소에 직관적으로 접근할 수 있게 되었다. 기존 for문과의 차이점을 코드로보자면 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 //main..... public void loop() { String []array = new String[]{"1", "2", "3", "4"}; for(int i = 0; i

JAVA 2020.03.10