본문 바로가기

백엔드/Java86

자바 정수범위 // - 2^7 ~ 2^7-1; byte a = Byte.MAX_VALUE; byte b = Byte.MAX_VALUE; // - 2^15 ~ 2^15-1 short s1 = Short.MIN_VALUE; short s2 = Short.MAX_VALUE; // - 2^31 ~ 2^31-1 int i1 = Integer.MIN_VALUE; int i2 = Integer.MAX_VALUE; // - 2^63 ~ 2^63-1 long h1 = Long.MIN_VALUE; long h2 = Long.MAX_VALUE; byte aa = (byte) (new BigInteger("2").pow(7).longValue()); //-128 - as expected short bb = (short) (new BigIn.. 2024. 3. 20.
StringBuffer 와 StringBuilder 의 차이 StringBuilder와 StringBuffer는 메소드명까지 같다.그렇다면 두개의 차이점은 무엇일까? StringBuffer는 스레드에 안전하게 설계되어 있다. 즉 여러 스레드가 하나의 StringBuffer의 객체를 작업할 수 있다. 그리고 StringBuilder는 스레드에 안전하지 않으므로 단일 스레드로 작업해야한다. 정리하자면 1. String 클래스의 +연산은 짧은 문자열을 더할 때에만 사용한다. 2. StringBuffer 클래스는 스레드 작업을 하거나, static 문자열을 변경하거나, singleton 클래스에 선언된 문자열에서 작업할 때 사용한다. 3. StringBuilder 클래스는 단일 스레드로 작업할 때나, 메소드의 지역변수를 상대로 작업한다. 4. JDK 5.0 이상부터는 S.. 2024. 3. 20.
ICMP ECHO public static boolean isReachableByPing(String host) { try{ String cmd = ""; if(System.getProperty("os.name").startsWith("Windows")) { // For Windows cmd = "ping -n 1 " + host; } else { // For Linux and OSX cmd = "ping -c 1 " + host; } Process myProcess = Runtime.getRuntime().exec(cmd); myProcess.waitFor(); if(myProcess.exitValue() == 0) { return true; } else { return false; } } catch( Exception.. 2024. 3. 20.
자바 변수 1. static 변수(즉 정적변수)란 - Class 당 하나만 생성되는 변수, 객체(인스턴스)를 아무리 많이 만들더라도 변수는 하나만 존재 - 객체가 생성될 때마다 새롭게 생성되는 멤버 변수와는 달리 초기에 한번만 생성되고 공유하여 사용가능 2. static 변수 생성 시기 : Class 이름이 언급되어 질때 생성 (new 뿐만 아니라 Class 명만 나와도 생성됨) - 한개만 호출되면 나머지도 static 변수도 한꺼번에 초기화 static final 변수 생성 시기 : Class 이름이 언급 되어지면 해당 변수만 생성 - 나머지 static final 변수는 초기화 안됨. 3. 변수 종류 - 멤버변수 : 클래스변수(정적변수, static 변수) , 인스턴스변수 - 지역변수 2024. 3. 20.
자바 자료구조 2024. 3. 20.
728x90