본문 바로가기

Java

[Java] Map 객체에 담긴 value들을 전부 가져오고 싶은 경우 (key를 모르는 상황에서) 키를 알고 있다면 get() 로 간단하게 객체를 찾아오면 되지만, 저장된 전체 객체를 대상으로 하나씩 얻고 싶을 경우에는 다음 방법을 이용한다. keySet() 메소드로 모든 키를 Set 컬렉션으로 얻은 다음, 반복자를 통해 키를 하나씩 얻고 get() 메소드를 통해 값을 얻으면 된다. 1 2 3 4 5 6 7 8 9 Map map = new HashMap(); // 객체를 하나씩 처리 Set keySet = map.keySet(); // keySet() 메소드를 이용하여 key값들 얻기 Iterator keyIterator = keySet.iterator(); while(keyIterator.hasNext()) { String key = keyIterator.next(); Integer value = .. 더보기
dto는 재활용이 되지 않습니다. (따로 선언해줍시다) SearchChartDTO dto = new SearchChartDTO(); dto.setSite_name("itunes"); (..생략..) dto.setSite_name("flo"); 같은 dto 객체에 대해 "itunes" 도 세팅하고, "flo" 도 세팅했습니다. 이러면 마지막에 세팅한 "flo"가 값이 박히는게 아닙니다. 저렇게 따로 세팅해줘야 할 일이 있다면, 아래와 같이 dto를 각각 만들어서 사용해주세요 SearchChartDTO dto = new SearchChartDTO(); dto.setSite_name("itunes"); (..생략..) SearchChartDTO dto2 = new SearchChartDTO(); dto2.setSite_name("flo"); 더보기
자바에서 List null 체크하는 법 흔히 하는 실수로 list 를 if(list == null) 로 체크하는 경우가 있는데, 이러면 조건을 성립하지 못하게됩니다. null 체크는 list 안에 있는 데이터들에 대해서 null 체크 해야 합니다. if(list.get(i) == null) { .. } list null 체크는 다음과 같이 isEmpty 메소드를 이용합니다. if (list.isEmpty()) { ... } 더보기
Scanner 클래스에서 nextLine() 과 next()의 차이점 Scanner 클래스에서 nextLine() 과 next()의 차이점 next() : 공백을 기준으로 입력을 받는다. 즉, 띄어쓰기를 기준으로 입력을 받는다. nextLine() : 한 라인을 기준으로 입력을 받는다. 즉, 개행문자(=줄넘김)를 기준으로 입력을 받는다. 더보기
[JEUS] JEUS의 JAVA_HOME 변경이 안될 때 일반적으로 우리는 JAVA_HOME을 변경할 때에 고급시스템 설정에서 JAVA_HOME을 추가해 줌으로써 JAVA_HOME을 잡는다. 하지만 JEUS의 경우 이미 설치된 후에 JAVA_HOME을 아무리 변경해 주어도 변경이 안된다. 알고봤더니 이미 설치된 이후에는 C:\TmaxSoft\JEUS6.0\bin\jeus.properties.cmd 파일을 열어 JAVA_HOME을 변경해 주어야 한다. cmd 파일을 여는방법은 (Windows 기준) notepad라고 앞에 적어주면 열림 C:\TmaxSoft\JEUS6.0\bin>notepad jeus.properties.cmd 여기서 JAVA_HOME 부분을 수정해주면 된다. 더보기
Java 설치하기 - JDK 설치, Eclipse 설치 (이대로만 따라하세요!) 1. JDK 설치 개요 Java라는 언어를 OS (Window, Linux ..) 가 알아들을 수 있게 번역해주는 번역기가 JDK 이다. [참고] 편집툴은 editplus, eclipse가 있는데 editplus는 사이트 일부분의 코드만 고칠 때 필요하므로 사용하는 법은 간단하게 알아두는게 좋음 (Text 위주 통합툴이며 Java, C, C# 등등 웬만한거 작성 다 가능함) 여담을 얘기하자면, Java는 원래 Sun회사 꺼였는데 DB를 가지고있는 Oracle이 인수하면서 Java+UNIX(OS)+H/W+DB 이런 완벽한 패키지가 완성되었다. - JDK SE버전은 Windows용이고 JDK EE버전은 Unix용이다. - Java SE 11.0.3 (LTS) : LTS는 안정화 된 버전이라는 표시이다. 자바.. 더보기
NullPointException 이 나는 경우 String a = null; System.out.println(a); // null 이라고 출력이 된다. * 내가 헷갈렸던 개념 - null값 들어가있으면 그냥 출력시에도 무조건 nullpointexception이 나는 줄 알았다. 이 String을 이용해 메소드를 사용하거나 참조를 할 때 보통 nullpointexception이 된다. 더보기
추상클래스와 인터페이스 추상 클래스 추상클래스는 new 연산자를 사용해서 인스턴스를 생성시키지 못한다. Animal animal = new Animal(); // (X) 추상 클래스는 새로운 실체 클래스를 만들기 위해 부모 클래스로만 사용된다. 코드로 설명하면 extends 뒤에만 올 수 있는 클래스이다. class Ant extends Animal {...} // (O) 추상 클래스도 생성자가 반드시 있어야 한다. - 자식 객체가 생성될 때 super(..)를 호출해서 추상 클래스 객체를 생성하기 때문. 추상 클래스의 용도 - 실체 클래스마다 다른 점만 실체 클래스에 선언하게 되면 실체 클래스를 작성하는데 시간을 절약할 수 있다. 인터페이스 - 구현하는 모든 클래스에 대해 특정한 메서드가 반드시 존재하도록 강제한다. - 인터.. 더보기