Language

    java 자료형 형변환

    Java – comparing stringsUse == for primitive data types like intIf (mystring == null) Use the equals() method to compare objectsUse .equals for strings : if (a.equals(“cat”)) Java - Converting int to stringString myString = Integer.toString(my int value) orString str = "" + i Java - Converting String to intint i = Integer.parseInt(str); orint i = Integer.valueOf(str).intValue(); double to String..

    자바 컬렉션 프레임워크

    ● java.util. 컬렉션 프레임 워크 프로그램을 작성한다는 것은 무엇일까? 프로그램은 데이터를 일정한 규칙에 맞춰 가공하는 일련의 과정으로 볼 수 있다. 물론 어떻게 가공하는 지도 중요하겠지만 데이터를 관리하기 위한 방법 역시 프로그램에서 중요한 요소이다. 자바에서는 이런 데이터를 개발자가 쉽게 이용할 수 있도록 다양한 클래스 형태로 제공하는데 이들을 컬렉션 클래스 혹은 just 컬렉션이라 라고 부른다. 프레임 워크란? ->만들고자하는 구조물의 기본골격 쓰이는 상황에 따라 다양한 의미를 가지는 용어로 어플리케이션(자바) 프레임워크에서는 물리적인 실체이면서 반제품 성격의 구체적이고 체계화된 API를 제공하는 개념. 즉, 자바 프레임 워크 = 라이브러리(클래스) + 디자인 패턴(가이드라인) 더욱 자세히..

    JNI - GetStringUTFChars

    JNI는 C와 자바 간의 문자열을 처리할 수 있는 다양한 함수 지원한다. 이중 GetStringUTFChars() JNI함수는 JNIEnv * 를 통해 호출 가능하다. GetStringUTFChars 형식 - const jbyte* GetStringUTFChars(JNIEnv *env, jstring string, jboolean *iscopy) 이 함수는 자바 String 객체를 UTF-8문자열(C 문자열) 형태로 변환 후 포인터를 반환한다. 입력 인자 JNIEnv *env - JNI Interface Pointer string - 자바 스트링 객체 isCopy - String 객체가 가리키는 문자열이 UTF-8문자열 형태로 메모리에 복사되고 해당 포인터가 반환되면 *isCopy 는 JNI_TRUE로 ..

    jni lib를 static block에서 로드하는 이유

    java에서 c/c++ 코드를 사용하기 위해 jni를 사용하게 되는데 이때 java 코드에서 라이브러리 로드시에 static { System.loadLibrary("라이브러리 이름");} 으로 많이 사용하게 되는데, 그 이유는 만약 라이브러리가 로드되지 않는 상태에서 함수 호출시 오류가 발생할 수 있다. 함수 호출 시점보다 먼저 C 라이브러리 로드하기 위해 static block사용하게 일반적이다.

    jni so파일 링크

    gcc -shared -fPIC -o libhellojni.so hellojni.c -I/usr/lib/jvm/java-6-openjdk-amd64/include/ -I/usr/lib/jvm/java-6-openjdk-amd64/include/linux/ gcc -shared -fPIC -o "so파일명" "c파일명" -I/usr/lib/jvm/java-6-openjdk-amd64/include/ -I/usr/lib/jvm/java-6-openjdk-amd64/include/linux/

    TCP/IP 소켓 통신

    서버와 클라이언트 프로그램 작동및 진행순서 1. 서버가 소켓을 생성하고 연결을 기다린다. 2. 클라이언트에서서버의 소켓에 연결한다. 3. 클라이언트에서 데이터를 전송한다. 4. 서버에서 데이터를 받아서 화면에 출력한다. 5. 서버와 클라이언트의 소켓연결을 끊는다. 프로그램은 2개를 작성한다. 당연히 서버와 클라이언트이다. 각각 SocketServer.java , SocketClient.java로한다 파일은 우측위 누르셈 명령 프롬프트를 2개 띄운후에 javac SocketServer.java javac SocketClient.java를 각각 컴파일해준다. 하나의 콘솔에서 서버를 먼저 실행시킵니다. 파라미터로포트값을 주는데, 주지않으면 5777번이 잡히게 된다. 포트번호는 보통 3000번 이상의 값을 주는..