반응형

프로그래밍/Java 7

JAVA CSV파일 엑셀 다운로드 후 시간 표기 오류

CSV로 파일을 만들때 앞에 =" 뒤에 " 값을 주면 CSV값에는 해당문자들이 포함되있지만 실제 보이는 값에는 해당문자가 빠져있다. EX) sb.append("=\""+ur.getDate()+ " " + ur.getTime()+"\""+","); 출처 https://blog.naver.com/tear230/220562618850 엑셀에서 CSV파일을 열때 숫자를 문자열로 인식 # CSV파일로 작성된 데이터를 엑셀프로그램으로 열어서 확인하는 경우 숫자타입을 강제로 문자열로 인식... blog.naver.com

ArrayList_Clear, new 차이점

ArrayList Clear, new 차이점 이중 배열생성 ArrayList list = new ArrayList(); ArrayList innerList = new ArrayList(); innerList.add("1"); innerList.add("2"); innerList.add("3"); list.add(innerList); list.add(innerList); list.add(innerList); // System.out.println(list);[[1, 2, 3], [1, 2, 3], [1, 2, 3]] for (ArrayList string : list) {//[1, 2, 3] System.out.println(string);//[1, 2, 3] }//[1, 2, 3] 이중배열 값입력 문제 ..

ArrayList, LinkedList 속도 비교

ArrayList, LinkedList 속도 비교 구분 순차적 추가 / 삭제 중간 추가 / 삭제 검색 ArrayList 빠름 느림 빠름 LinkedList 느림 빠름 빠름 List test1 = new ArrayList(); List test2 = new LinkedList(); long startTime; long endTime; startTime = System.nanoTime(); for (int i = 0; i < 100000; i++) { test1.add(0, String.valueOf(i)); } endTime =System.nanoTime(); System.out.println("지속 변경 ArrayList 걸린 시간 : " + (endTime - startTime)); startTime ..

자바 - 오버로딩(Overloading)과 오버라이딩(Overriding)

오버로딩(Overloading), 오버로드 오버로딩 = 동일한 이름의 함수(메소드)를 여러번 정의하고 사용 가능(파라미터의 수, 순서, 타입이 다르다.) 메소드는 클래스에서 특정기능을 담당하도록 설계되어있다. 컴파일러는 같은 메소드로 중복정의가 있는지 확인한다. 확인 기준 요소 메소드 이름 메소드 파라미터(다시 세가지로 구분) - 파라미터 갯수, 순서, 타입 파라미터 갯수, 순서, 타입 위 세가지 요소를 통칭하여 메소드 시그니처라고 한다. 만약 정의된 메소드 이름과 시그니처까지 같다면 같은 메소드로 인식 에러 발생 (만약 시그니처중 하나라도 틀리면 다른 메소드로 인식) 이렇게 같은 이름의 메소드를 시그니처만 다르게 해서 정의하는 것을 오버로딩(오버로드)라고한다. 호출시에는 반드시 호출하려는 메소드의 시그..

자바 배열을 복사하는 방법 (깊은 복사, 얕은 복사)

배열 복사하는 방식 얕은 복사, 깊은 복사 2가지 방식으로 구분 얕은 복사(shallow copy) 한 쪽에서 수정이 발생되면 다른쪽에도 영향을 끼쳐 같아지게 된다. 얕은 복사는 주소값을 복사하기 때문에 주소로 값을 참조하여 값이 변경되면 해당 값을 참조하고 있는 배열들의 값이 변경된다. 복사된 배열이나 원본 배열이 변경될 때 함께 변경(연산자는 얕은 복사 수행) int[] arr01 = {10, 20, 30}; int[] arr02 = new int[3]; arr02 = arr01; arr01[0] = 100; System.out.println(Arrays.toString(arr01));//[100, 20, 30] System.out.println(Arrays.toString(arr02));//[100..

toString()과 String.valueOf()

toString(), String.valueOf() 두 메소드 모두 오브젝트 값을 String으로 변환 하지만 변경하고자 하는 오브젝트가 null인경우 결과 값이 다름 String.valuOf() - 문자열 null 반환 vauleof() -> NPE 오류 발생, 오브젝트에 담긴 값이 String이 아니여도 출력 두 메소드의 차이는 null값에 따른 NPE 발생 유무 이런 차이점으로 valueOf()의 null 체크 방법은 "null".equals(string)형태로 체크 해야 한다. destItemMap.get("LOWER_VAL") 이 null 일 경우 String lowerCoatingVal1 = String.valueOf(destItemMap.get("LOWER_VAL")); String lowe..

Character.메소드 대소문자, 숫자 확인, 변환 메소드, isAlphabetic

Character 메소드 isUpperCase(); 대문자 확인 메소드 isLowerCase(); 소문자 확인 메소드 isDigit(); 숫자 확인 메소드 //대소문자, 숫자 확인 메소드 char ch1 = 'c'; char ch2 = 'C'; char ch3 = '1'; System.out.println(Character.isUpperCase(ch1)); // false System.out.println(Character.isLowerCase(ch1)); // ture System.out.println(Character.isUpperCase(ch2)); // ture System.out.println(Character.isLowerCase(ch2)); // false System.out.println(..

반응형