본문 바로가기

Kotlin basic17

코틀린 기본 문법 복습 코틀린 기본 문법 복습 package com.monosoft.monopractice fun main() { //helloWorld() //println(add(4,5)) //3.String Template //val name = "wonho" //val name1 = "kim" //println("안녕하세요 ${name+name1}요" ) //println("지금 달러는 \$aaaa ") /*주석 */ //주석 블럭지정 후 컨트롤 / 키 //forAndWhile() //nullcheck() ignoreNulls("kimwonho") } //1. 함수 fun helloWorld() : Unit { //Unit은 리턴이 없을경우 println("Hello world") } fun add(a:Int, b:In.. 2022. 8. 9.
어댑터(adapter)란? 어댑터(adapter)란? 어댑터(adapter)는 보여지는 뷰와 그 뷰에 올릴 데이터를 연결하는 일종의 다리 역할을 하는 객체를 말합니다. 어댑터가 데이터소스(배열, ArrayList, LinkedList, DB ...)와 어댑터 뷰(ListView, GridView) 사이에 있으면서 데이터 소스에 있는 데이터에 맞춰 어댑터 뷰를 변경합니다. 이번 글에서 다룰 ArrayAdapter는 ListView와 데이터(ArrayList)를 연결하는 역할을 담당합니다. ​ ​ 2022. 7. 29.
리스터 이해 리스터 이해 버튼을 내려놓는다.. package com.monosoft.myapplication import android.app.Activity import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.os.DeadObjectException import android.util.Log import android.view.View import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super... 2022. 7. 25.
null 값을 안정적으로 처리 방법 null 값을 안정적으로 처리 방법 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //null값을 안정적으로 처리 방법 //1.변수 선언시 nullable 해서 Null을 입력할수있는 변수를 선언 //2.nullable 선언되었다면 safe Call 강제해서 null pointer exception 안나게 한다. //3.null일 경우 대체값을 꼭 입력한다면 엘비스 익스프리스( ?: 값 )를 써서 디폴트값 지정 var myName : String = .. 2022. 7. 22.
클래스 클래스 1. 클래스 기본 개념 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //클래스 사용하는 방법 //1.초기화 //var cls = 클래스() //인스턴스 = 메모리에 로드되어 있는 클래스 //cls.variable //cls.function() //2. companion object 로 만들기 Log.d("태그","메시지") } } class Log { companion object { var variable = "난 누구" fun d(tag:.. 2022. 7. 21.
함수 함수 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //함수를 사용하는 용도는 코드를 분류하기 위해서 사용 //함수사용 functionName() functionparam("문자형값",111) var pi:Double = getPi() Log.d("getPi","getPi=${pi}") var functionparamreturn : String = functionparam_return("p1",222) Log.d("functionparam_return.. 2022. 7. 19.
반복문 (for, while , do..while, break) 반복문 (for, while , do..while, break) var intArray = intArrayOf(0,10,20,30,40,50,60,70,80) //for 문 //일반적으로 몇 번의 횟수를 반복하는 형태 //for ( 시작값..종료값) { //코드블럭 //} //for (index in 1..10) { //for (index in 1 until 10) { //마지막값은 제외 //for (index in 1 until 10 step 2 ) { //짝수만 제외 후 출력 //for (index in 10 downTo 1 step 2) { //반대로 반복문 , 짝수만 출력 for (value in intArray) { //배열 반복문 Log.d("반복문","index=${value}") } //w.. 2022. 7. 18.
배열 / 컬렉션 / 맵 배열 / 컬렉션 / 맵 //*****************************************배열 (정적배열) //Int -> IntArray var intArr:IntArray = IntArray(10) //index = 0 부터 시작 intArr[0] = 10 intArr[1] = 20 intArr[2] = 30 intArr[3] = 40 intArr[4] = 50 intArr[5] = 60 intArr[6] = 70 intArr[7] = 80 intArr[8] = 90 intArr[9] = 100 //intArr[10] = 110 Log.d("intArr","9번 인텍스의 값=${intArr[9]}") var weekArray = CharArray(7) weekArray[0] = '월' we.. 2022. 7. 13.
조건문 조건문 //****************************조건문**************************** //**************비교연산자 , >= , 2 var result = "홍길동" != "김숙자" Log.d("compare","결과는 = ${result}") var result2 = second < 500 Log.d("compare","두번째 결과=${result2}") //**************논리연산자 var logic1 = result && result2 //AND 연산자 Log.d("compare","논리연산 && 결과 = ${logic1}") var logic2 = result || result2 //OR 연산자 Log.d("compare","논리연산 |.. 2022. 7. 12.
변수와상수 변수와상수 package com.MonoSoft.SayHello import android.os.Bundle import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) var variable : String = "홍길동" //*********코틀린의 기본타입 //실수형 var doublevalue : Double = 35.6 //자주씀 var floatvalue : Float =.. 2022. 7. 11.
앱 개발을 위해서 꼭 알아야할 코틀린 문법 3가지 앱 개발을 위해서 꼭 알아야할 코틀린 문법 3가지 package com.MonoSoft.SayHello import android.os.Bundle import android.util.Log import androidx.appcompat.app.AppCompatActivity import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { val TAG = "MainActivity" override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_.. 2022. 7. 5.
로그 활용하기 로그 활용하기 package com.MonoSoft.SayHello​ import android.os.Bundle import android.util.Log import androidx.appcompat.app.AppCompatActivity import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { val TAG = "MainActivity" override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) buttonLog.set.. 2022. 6. 17.
코틀린 기본 문법 5 - 기타기능 코틀린 기본 문법 5 - 기타기능 //******************************* 확장 함수 //쉽게 기존 클래스에 함수를 추가할수 있다 //확장함수를 추가할 클래스에 점을 찍고 함수이름 작성 //확장 함수 내부에서는 이 객를 this로 접근할수 있다 //이러한 객체를 리시버 객체라고 함 fun Int.isEven() = this % 2 == 0 val aa = 5 val bb = 6 println(aa.isEven()) println(bb.isEven()) //******************************* 형변환 //숫자형 자료형끼리는 to자료형() 메서드를 사용하여 형변환 가능 val a = 10L val b = 20 val c = a.toInt() val d = b.toDou.. 2022. 6. 14.
코틀린 기본 문법 4 코틀린 기본 문법 4 //******************************* 람다식 //하나의 함수를 표현하는 방법으로 익명 클래스나 익명함수를 간결하게 표현함 //코드를 간결하게 해주는 장점,디버깅이 어렵고 남발할경우 오히려 단점됨 fun add(x : Int , y : Int) : Int { return x + y } println(add(1,2)) //또는 fun add1(x : Int, y : Int) = x + y println(add1(1,2)) //또는 val add2 = { x : Int, y : Int -> x + y} println(add2(1,2)) //******************************* Sam 변환 //자바로 작성된 메소드가 하나인 인터페이스를 구현할때 대.. 2022. 6. 2.
코틀린 기본 문법 3 코틀린 기본 문법 3 //******************************* 컬렉션 //컬렉션은 개발에 유용한 자료구조를 말함 //******************************* 리스트 //읽기 전용 리스트는 listOf()메서드로 작성할수있다 val foods : List = listOf("라면","갈비","밥") println(foods.get(1)) //바꿀수없는 리스트값 val foods1 = listOf("라면","갈비","밥") //바꿀수없는 리스트값 println(foods1.get(1)) //바꿀수 있는 리스트값 val foods2 = mutableListOf("라면","갈비","밥") foods2.add("초밥") //초밥을 맨 뒤에 추가 foods2.removeAt(0) .. 2022. 5. 26.
코틀린 기본 문법 2 코틀린 기본 문법 //******************************* 클래스 // 클래스란? // :붕어빵 틀에 비유할수있고 인스턴스는 클래스를 생성한 객체의 실체인 // 붕어빵에 비유할 수 있습니다. 코틀린에서의 클래스는 자바와 역할은 유사하지만 더 간결함 //클래스 선언 class Person() { } val person : Person = Person() var person1 = Person() //******************************* 생성자 class Personmen ( val name : String = "철수", var age : Int = 0) val PMen = Personmen(age = 10) class Per { constructor(name : Str.. 2022. 5. 25.
코틀린 기본 문법 1 코틀린 기본 문법 //******************************* 변수 선언 var a: Int = 10 a = 20 println(a) //******************************* 상수 선언 val b: Int = 10 //b=20 //오류 //******************************* 함수 fun greet(str: String) { println(str) } greet(str = "안녕합니까?") //또는 fun greet2(str:String) = println(str) greet2( str="안녕합니까2") fun something() : String { return "hello" } //******************************* 기본자료.. 2022. 5. 24.