본문 바로가기

Kotlin

(5)
[안드로이드] 코드에서 Ping 확인 Java /** * @return 0: success, 1: fail, 2: error */ public static int ping(@NonNull String host, int timeout) throws InterruptedException, IOException { int res; Runtime rt = Runtime.getRuntime(); Process process = rt.exec(String.format(Locale.US, "ping -c 1 -W %d %s", timeout, host)); // 0: 성공, 1: 실패, 2: 에러 res = process.waitFor(); // ~~ // shell 명령 출력 값 확인용입니다. 없어도 되요 BufferedReader br = new B..
Android Compass(나침반) 불현득 생각이 나서 코틀린 연습 겸 샘플용으로 만들었습니다~ 센서처리는 다음 블로그를 참고했어요. http://swlock.blogspot.com/2017/10/android-compass.html Android Compass (나침반) 안드로이드에서 나침반 만들기 1. 준비 한때 AR(증강 현실) 어플들이 유행하던 시절이 있었는데, 막상 그때는 관심이 없다가 지금에서야 정리하게 되네요. 시작하기전에 알아 두어야 하는 기본 개념이 3가지가 있습니다. Azimuth, Pit... swlock.blogspot.com MainActivity는 다음과 같이 되어있어요. Listener를 별도로 빼고 interface로 연결해주면 좀 더 깔끔하게 작성할 수 있습니다. class MainActivity : AppC..
Kotlin let을 이용한 Null check 구문 Kotlin에서는 표준 라이브러리 중 let으로 null check절을 좀 더 간단하게 작성할 수 있다. if(myNullable != null) { } 구문 var myNullable = null val res = myNullable?.let { it -> // 널이 아닐 때 실행코드 } if(myNullable == null) 구문 (한 줄) var myNullable = null val res = myNullable ?: "abcd" // 이 경우 res에 "abcd"가 할당된다. val res = myNullable ?: myFunction() // 이 경우 res에 kotlin.Unit가 할당된다. if(myNullable == null) { } 구문 (블럭) var myNullable = nu..
[Kotlin/Swing] 화면 잠금 방지 App 1.0 모종의 이유로 화면 잠금 / 절전 모드를 설정할 수 없는 컴퓨터에서 사용합니다. 이것저것 세팅이 귀찮은 관계로 Swing으로 작업하였고 작성 언어는 Kotlin입니다. 소스는 github를 참고하시기 바랍니다. 사용법 : ALT + TAB으로 창 전환 혹은 마우스 클릭으로 해당 앱이 활성화가 되면 동작을 시작합니다. 우측 정지버튼을 누르거나 Q를 타이핑 시 일시정지됩니다. Java (JRE)가 설치되어 있어야 하며 이곳에서 다운로드 및 설치가 가능합니다. 다운로드는 이곳으로 들어가서 아래와 같이 download 버튼을 클릭하세요.
Java와는 다른 Kotlin만의 기본 문법 정리 1. String literal val ben = """ 사랑 다 비슷해 그래 다 비슷해 너는 다르길 바랬는데 넌 뭐가 미안해 왜 맨날 미안해 헤어지는 날조차 너는 이유를 몰라 이젠 180도 달라진 너의 표정 그 말투 너무 따뜻했던 눈빛 네 향기까지도 정말 너무나도 달라진 우리 사랑 또 추억 아직 그대로인데 난 이젠 180도 변해버린 지금 너와 나 """ print(ben) 2. in 연산자 val num = arrayOf(100, 200, 300, 400) pirntln("${200 in num}") // true pirntln("${num.contains(200)}") // true pirntln("${200 !in num}") // false pirntln("${!num.contains(200)}"..