Kotlin toIntOrNull

코틀린에서 숫자 변환시에 자주 쓰이는 함수입니다.

다른 용도로 숫자인지 아닌지를 판단할때도 자주 쓰는데 주의할 점이 있습니다

fun main(args:Array<String>)
{
    "1234".run {
        println(this.toIntOrNull() ?: "$this is not number")
   }
    "349505749735".run {
        println(this.toIntOrNull() ?: "$this is not number")
        println(this.toBigIntegerOrNull() ?: "$this is not number")
    }
}

//1234
//349505749735 is not number
//349505749735

위 예제를 보시면 문자열이 숫자인지 아닌지 판단하기 위해 toIntOrNull을 사용하였지만

중간에 숫자가 아니라고 나오는 경우가 발생합니다.

 

이미 눈치채셨겠지만 숫자가 너무 커서 toInt를 하지 못한 경우입니다.

toBigIntegerOrNull로 대체해서 해결되었지만 무심코 쓰다가 실수할 수 있는 부분이니 신경 써주면 좋습니다

  Comments,   0  Trackbacks
댓글 쓰기
mysql 사용자 추가 및 권한

제목 그대로 mysql 8 버전 기준 사용자 / db / 권한 추가



create user testuser identified by 'mypassword';


create database testdb;


grant all privileges on testdb.* to 'testuser' with grant option;


'개발 > DB' 카테고리의 다른 글

mysql 사용자 추가 및 권한  (0) 2019.02.07
Mybatis #과 $의 차이  (1) 2014.11.10
몽고DB 설치  (0) 2014.01.22
테이블 정보(컬럼 정보, 코멘트 등등)  (0) 2013.11.11
테이블 사이즈 구하기(컬럼 길이, 컬럼 길이 평균)  (0) 2013.03.12
[ORACLE] 달력  (0) 2012.09.14
  Comments,   0  Trackbacks
댓글 쓰기
http 응답에서 특정 헤더가 읽어지지 않을때

axios를 이용해서 통신하는 도중 헤더를 읽지 못하는 현상 발생


서버에서 201 created 응답 헤더에 생성된 자원의 Location을 보냈으나 받지 못함

(크롬의 network 탭에서는 보이나 response.headers.location이 undefined로 찍힘)


CORS 이슈로 다음의 헤더만 사용가능

Cache-Control

Content-Language

Content-Type

Expires

Last-Modified

Pragma


추가적인 헤더 사용하기 위해서는 다음과 같이 CORS설정 시 명시해줘야함


@CrossOrigin(origins = ["http://localhost:3000"], exposedHeaders = ["Location"])


  Comments,   0  Trackbacks
댓글 쓰기