program_language 및 궁금한것/Java
-
[Java] DateTime Millisecond 반올림하기program_language 및 궁금한것/Java 2023. 2. 8. 20:02
안녕하세요. 최근 DateTimeFormat을 사용할때 millisecond가 절삭이 되어서 관련 해결책을 찾으려 찾아보았지만 찾지 못했습니다. ms를 반올림 하는 설정 자체가 없어요. 그래서 조건문으로 코드를 추가하였습니다. 손쉽게 해결. String result = null; String dateCode = "2023-02-01 17:18:04.583"; DateTime dt = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss.SSS").parseDateTime(dateCode); // 밀리세컨즈가 500이상일때 1초 더해준다. 왜냐하면 아래 코드에서 날짜 변환을 할때 밀리세컨초를 반올림 하는 것이 아니라 절삭해버림 int ms = dt.getMillisOfSeco..
-
java 의 일급 객체란?program_language 및 궁금한것/Java 2022. 2. 10. 19:48
제가 일급객체라는 말을 처음 접한건 자바스크립트에서 였는데 일급객체가 단순 자바스크립트에만 해당하는 개념은 아니더군요. 함수형 프로그래밍에서 1급객체란 말이 많이 언급됩니다. 1급 객체란 무엇일까요? 1급시민(1급 객체)는 위키피디아에서 다음과 같이 정의하고 있습니다. wikipedia 일급 객체와 이급 객체. ALGOL에서 실수는 표현식에 사용하거나 변수에 할당할 수 있으며, 프로시저에 매개변수로 넘겨질 수 있다. 하지만 프로시저의 경우 프로시저 콜에서 호출 대상 혹은 매개 변수로 등장할 수 있을 뿐이며, 프로시저를 반환하는 프로시저는 없다. 이런 측면에서 ALGOL에서의 프로시저는 이급 시민이다. 언제나 직접 나타나야 하며 변수나 연산식으로 대신 나타낼 수 없기 때문이다. 1급 객체의 충족 조건 세가..
-
[java] 박재성님의 리팩토링 후기program_language 및 궁금한것/Java 2022. 2. 9. 17:58
코드 리팩토링을 위해서 찾아보던중 유투브에 박재성님의 영상이 있는것을 확인했다. 이분이 유명하신 자바지기의 박재성님이구나 생각하며 강의를 듣고 내용을 정리한다. 1. 자바 코드 컨벤션을 지키면서 프로그래밍 한다. 참고사이트1: https://google.github.io/styleguide/javaguide.html 참고사이트2: https://myeonguni.tistory.com/1596 Google Java Style Guide 1 Introduction This document serves as the complete definition of Google's coding standards for source code in the Java™ Programming Language. A Java sou..
-
[JAVA] 특정시간마다 반복 실행 Timerprogram_language 및 궁금한것/Java 2022. 2. 8. 15:46
개발된 페이지 테스트를 위해 몇초에 한번씩 새로고침을 해야했다. 귀차니즘으로 검색해 보니 java의 timer를 이용해 특정시간마다 메소드를 실행할 수 있었다. TimerTask task = new TimerTask() { @Override public void run() { System.out.println("-------------"); getUrl(); //특정메소드 } }; new Timer().scheduleAtFixedRate(task, 0l, 3000); new Timer().scheduleAtFixedRate(task, 0L, 3000); task 작업을 0ms의 딜레이를 주고 3초마다 반복한다. 괄호안의 단위는 ms이기 때문에 1초 = 1000을 적어주면된다.
-
[JAVA] Scanner와 Buffered Reader의 차이점 (알고리즘)program_language 및 궁금한것/Java 2021. 8. 3. 23:11
알고리즘 공부를 하다보니 java에선 Buffered Reader를 사용하는게 성능향상에 더 좋다고 한다. 검색을 해보니 다양한 이유가 있어서 java api문서와 블로그를 참고해 보았다. scanner와 BufferedReader는 모두 문자열을 입력받는데 사용되는 클래스이다. - BufferedReader는 일정한크기(8192chars)의 데이터를 한번에 읽어와 버퍼에 보관 후 사용자 요청시 버퍼에서 데이터를 읽어오는 방식이다. 그래서 시간부하를 줄일 수 있다. 입력받는 모든 형식은 String이다. - Scanner는 데이터를 입력받는 시점 정규식을 이용해서 테이터 타입이 결정되므로 별도의 Casting이 필요치 않다. 그리고 사용자 요청시 바로바로 데이터를 주기 때문에 데이터 용량이 클 경우 Bu..
-
[JAVA] 몇 초전 , 몇분전, 몇년전 구하기program_language 및 궁금한것/Java 2021. 4. 15. 20:17
public class Dateutil { public static void main(String[] args) { // 테스트를 위한 main메서드 //LocalDate localDate = LocalDate.now().minusDays(360); //LocalDateTime localDate = LocalDateTime.now().minusHours(1); //LocalDateTime localDate = LocalDateTime.now().minusSeconds(30); //LocalDateTime localDate = LocalDateTime.now().minusMonths(50); LocalDateTime localDate = LocalDateTime.of(2019, 11, 11, 18, 02)..
-
[ JAVA ] 컴파일에러와 런타임에러의 차이program_language 및 궁금한것/Java 2021. 3. 30. 20:32
* 컴파일 에러 - 구문 오류로 문법상의 에러를 뜻한다. - 괄호가 안맞거나 systax오류거나 기타 등등 ex) 이클립스에서 소스코드 작성 후 저장버튼을 눌렀을때 자동으로 .class라는 파일이 만들어진다. 작성하는 도중 구문이 맞지 않으면 해당 문자에 빨간색 줄이 가 있는것을 볼 수 있다. 이부분이 컴파일에러. * 런타임에러 - 애플리케이션을 실행시 발생하는에러이다. - 컴파일 후 실행하면서 발생하는에러이고, 에러 발생시 개발자가 원인을 찾아 해결해야 한다. - NullPointException , 무한루프도는것 , 0으로 나누는 것 등이있다.