Java5 에서부터 for-each 문이 추가됐다. 특별히 새로운 문법이 추가된게 아니라 기존 for문을 활용하는거라 for-each라고하면 못알아듣는 사람도 있고, 향상된 for문이라고 말하는사람도 있고.. 특히 요즘엔 stream API에 forEach() 메서드까지 추가되면서 의사소통에 약간 혼란스럼이 있긴하지만 보면 다들 알것이다. List list = Arrays.asList(1, 2, 3, 4, 5); for(Integer i : list){ System.out.println(i); } for-each 문은 인덱스를 명시할 필요없이 알아서 리스트 사이즈만큼 반복되기때문에 에러여지도 없어지고 코드도 간결해지는 매우 유용한 문법이지만 한가지 치명적인 문제점이 있다. 그것은 인덱스를 사용할 수 없다..
자바에 추가된지 참 오래된기술이지만 아직도 익숙치않은 기술이 하나있다.Generics(제네릭)이 바로 그것인데 제네릭에대한 포스팅을 간략히 진행하려한다.사실 제네릭이란 단어는 생소하더라도 초보개발자들도 당연하게 사용하고있는 부분이있는데 콜렉션프레임워크에서 타입을 제한할때 주로 사용하고있다. List numbers = new ArrayList(); ArrayList는 선형 자료구조로 배열과 유사한 자료구조이다. 배열과 다른점은 동일한 자료형만 관리할 수 있다는 점과 크기변환이 자유롭지않다는 것이다.제네릭을 사용하지않을때는 이런식으로 사용한다. List numbers = new ArrayList(); numbers.add(100);numbers.add(200); Object element = numbers...
이런저런사이트에서 이제막 자바를 배우기 시작한 분들이 많이 하는 실수중 하나가 문자열 비교이다. String 변수와 리터럴 문자열을 비교하는데 동일한 값인데 false가 떨어진다는 것이다. 이런 질문에 대한 답변은 주로 '문자열은 eqlaus()로 비교하세요.' 라는 답변이 주로 달리는데 이러다보니 equals()가 문자열 비교를 위해 존재하는 메서드인줄 아는 분들이 있는것같아 이번 포스팅을 작성하게 됐다. 일단 String 클래스의 특수성부터 확인해보자. 문자열은 무조건 equals()로 비교하라고 하지만 ==연산자가 항상 false를 반환하진 않는다. String str1 = "str"; System.out.println(str == "str"); String str2 = new String("str..
메서드를 호출할때 호출 하는 메서드가 인자를 필요로 하는경우 () 안에 인자를 넣어 호출한다. 이때 메서드에서 파라미터를 받아 사용할때 호출하는 방법이 2가지가 있는데 그것이 call by value, call by reference 이다. 우리말로하면 값호출, 참조호출 정도가 될것이다. 호출방법을 프로그래머가 지정할 수는 없다. 동일한 인자를 여기선 값으로, 저기선 참조로 호출할수는 없다는 얘기다. 기본적으로 자바는 8가지의 기본형 데이터에 대해선 call by value로 호출하며 그 외에 사용자지정타입. 즉 객체에 대해서만 call by reference로 호출하게된다. 두가지의 차이점은 소스로 확인해보자 class TestClass{ int num1; int num2; public TestClas..
WAS, DBMS 서버 등과 연결되는 Socket 관련 프로그램에서 다음과 같은 오류 메세지가 자주 발생한다. Connection reset by peer, Connection reset, Broken Pipe 이런 에러가 발생해도 정상적으로 잘 서비스되기 때문에 별로 관심을 안가졌는데 직접 데몬 서비를 만들고 관련 클라이언트를 만들다 보니 어떤 경우에 이런 에러가 발생하는지 알아야지만 대처가 가능할 것 같아서 찾아 보았다. - java.net.SocketException: Connection reset by peer: socket write error 원인: write 시 상대방 socket close 된 경우 - java.net.SocketException: Connection reset 원인: re..
- String.valueOf() - 파라미터가 null 이면 문자열 null을 만들어서 담는다. - Casting((String) aa) - 대상이 null이면 당연하게 NullPointerException - 만약 Object 에 담긴 값이 String 이 아니라면 ClassCastException - "".toString() - 당연하게 . 으로 사용하는 만큼 대상 값이 null 이면 NullPointerException - Object 에 담긴 값이 String 이 아니어도 출력[출처] [Java] String : valueOf toString Casting 의 차이|작성자 고민덩어리
1. executeQuery - 쿼리 결과를 ResultSet을 얻기 위한 메소드로 주로 SELECT문에 사용됩니다. 2. executeUpdate - 쿼리문으로 데이터를 다루는 INSERT, UPDATE, DELETE문이나 테이블을 다루는 CREATE, DROP, ALTER에 사용됩니다. - 적용된 행의 갯수를 리턴합니다. 3. execute - 모든 쿼리를 다 사용할 수 있습니다.(DDL, DML, DCL) 즉, executeQuery, executeUpdate 두가지 모두의 경우를 포함합니다. - 리턴은 Boolean형으로 넘어옵니다. 출처: http://diveis.tistory.com/50
- Total
- Today
- Yesterday
- Jackson
- http
- spring cloud
- go-core
- programming
- JavaScript Core
- servlet
- clean code
- generics
- frontcode
- Spring
- TEST
- code
- OOP
- DesignPattern
- 정규표현식
- toby
- javascript
- Git
- JPA
- EffectiveJava
- java8
- db
- MySQL
- backend개발환경
- mariadb
- Design Pattern
- frontend개발환경
- Kotlin
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |