[Java] Arrays.asList() - Can not adding element - Java

Arrays.asList() 
--> Arrays의 private 정적 클래스인 ArrayList리턴(java.util.Arrays.ArrayList)
--> java.util.ArrayList 클래스와는 다른 클래스 
--> 원소 추가 매서드 없음 
--> 사이즈 변경 불가 
--> 사이즈 변경이 가능한 ArrayList(java.util.ArrayList)를 사용하기 위해선 아래와 같이 필요
     
     ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arr));


-----------------------------------------------------------------------------------

[Arrays.asList()] method return java.util.Arrays.ArrayList.
It's different from java.util.ArrayList class. Also It doesn't have mehtod for adding element, so it 's size can not be changed.
If you want use ArrayList(java.util.ArrayList) which can be changed size, you can convert it like below.

ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arr));







[Java]문자열로 된 숫자값을 Split 후 최소/최대값 비교하기(Java Stream 사용) - Java

Codewars에서 Java 문제를 풀다가...

문제> 공백문자 " "로 구분된 숫자들의 문자열에서 최대/최소값 추출
예)"1 2 -3 5 -7"

처음엔 아래와 같이 아무 생각없이 For 문으로 해서 문제를 풀어 제출했는데...
제출 후에 내가 너무 단세포적이었던걸 깨달음



제출 후 다른 사람들의 솔루션을 보니... Stream을 이용하여 정말 멋지게 소스를 짰다...
(Codeware 소스여서... 링크로 대신)


Java Stream에 대한 설명은 아래 다른분의 글에 자세히 설명되어 있음...



공부 해놓고 안 쓰면 창피를 피할 길 없다라는 것을 느낀 시간...

반성 ㅜㅠ

[Java] 더블형 곱셉(실수형 곱셉)(Double Multiply, real number multiply) - Java

실수 연산의 경우 Java에서 자료형 특성 상 정상적으로 계산이 안될 경우가 있다. 

(예: System.out.println(7.12*(0.21));//1.4952 이지만 1.4951999999999999 출력)
(이유: https://stackoverflow.com/questions/21549172/float-double-calculation-error-in-java)

그렇기 때문에 실수 계산 시에는 아래와 같이 BigDecimal 타입 계산이 필요하다. 
--------------------------------------------------------------
Cause Java's real number value is stored in x * 2^y format, Sometimes Double or Float data type calculating in Java is to be error. 
[example]
System.out.println(7.12*(0.21)); // Answer is 1.4952, but result is 1.4951999999999999 

For prevent this case, we have to use BigDecimal type to calculate real numbers in Java.


[Double Multiply Sample]



[오라클]BASE64 Encode/Decode 함수 (Oracle-base64 Encode/Decode) - SQL


TEXT_ENCODE, TEXT_DECODE는 정확히는 "문자열을 변경할 문자 집합에 따라 텍스트를 변환/인코딩" 해주는 함수이다. 
세부 사용법은 아래 오라클 레퍼런스 참고
>> https://docs.oracle.com/cd/B28359_01/appdev.111/b28419/u_encode.htm#i996731

오라클 BASE64 Encode 함수
- sys.utl_encode.text_encode('타겟문구', '타겟 캐릭터셋', 출력옵션)
  출력옵션 값>>: 1=BASE64방식, 2=Quoted-Printable 방식, 기본값: null, Quoted-printable 방식 인코딩을 함
ex: sys.utl_encode.text_encode('TEST', 'KO16KSC5601', 1)

오라클 BASE64 Decode 함수
ex: sys.utl_encode.text_decode('VEVTVA==', 'KO16KSC5601', 1)


SELECT sys.utl_encode.text_encode('TEST', 'KO16KSC5601', 1) from dual;
SELECT sys.utl_encode.text_decode('VEVTVA==', 'KO16KSC5601', 1) from dual;



[oracle] expdb, impdb // ORA-39002, ORA-39070, ORA-39087 - SQL

1. expdb, impdb에서 사용할 경로를 오라클 상에서 생성 (Create directory for using expdb, impdb)
: expdb, impdb는 오라클 상에서 실행되므로, 경로 생성이 필요(because expdb,impdb are running on oracle, you have to create diretory on Oracle)
: 생성 안할 경우, 아래와 같은 오류가 발생 (if you don't create it, you will see under errors)

ORA-39002: invalid operation
ORA-39070: Unable to open the log file.
ORA-39087: directory name DATA_PUMP_DIR is invalid

: SQLPlus(콘솔에서 sqlplus "/as sysdba" 실행. running command sqlplus "/as sysdba" on your console) 또는 오라클 명령창에서 아래 쿼리 실행 

create directory oradir as '/oraback'

* oradir: 오라클에 등록할 경로명 (directory name for creating and using it on Oracle)
** '/oraback': 실제 물리 경로( absolute path on your server. Dump files will be made on this directory)


2. expdb 샘플 코드(expdb sample)
                 [LINK] expdb sample code - Gist

3. impdb 샘플코드 (impdb sample)










1 2 3 4 5 6 7 8 9 10 다음


AD_1