본문 바로가기

Kotlin/Kotlin 문법30

코틀린 기본 문법 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.
코클린 Companion object / object package com.monosoft.monopractice //Companion object class Book private constructor (val id : Int, val name : String) { //private constructor는 다른곳에서 객체를 생성못하게 함 companion object BookFactory : idProvider { override fun getId(): Int { return 333 } val myBooik = "name11" fun create() = Book(0, myBooik) } } interface idProvider { fun getId() : Int } fun main(){ //val book = Book.Companion.create() v.. 2020. 12. 31.
코틀린 POJO 데이터 클래스 package com.monosoft.monopractice //POJO : 어떤모델이되는 클래스, 비어있는 어떤 틀 클래스를 푸조라고 한다. data class Ticket(val companyName : String, val name : String, var date : String,var seatNumber : Int) //toString(), hashCode(), equals(), copy() class TicketNormal(val companyName : String, val name : String, var date : String,var seatNumber : Int) fun main(){ val ticketA = Ticket("koreanAir","kimwonho","2020-02-16".. 2020. 12. 31.
안드로이드이 문법강의2편 람다식 package com.monosoft.monopractice //1. Lamda // 람다식은 우리가 마치 value 처럼 다룰 수 있는 익명함수이다. // 1) 메소드의 파라미터로 넘겨줄수가 있다. fun maxby( a : int) // 2) return 값으로 사용할 수가 있다. // 람다의 기본정의 // val lamdaName : Type = {argumentList -> codeBody} //input int를 받아서 output int를 내보내서 number는 int로 타입을 추론해서 리턴을 해준다. val square : (Int) -> (Int) = {number -> number*number} val nameAge = {name : String, age :Int -> //리턴 "my n.. 2020. 12. 30.
안드로이드이 문법강의1편 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:Int) : Int { //.. 2020. 12. 23.
Android AsyncTask의 구조와 제작 사항 package com.monosoft.asynctasksample import android.graphics.Bitmap import android.graphics.BitmapFactory import android.os.AsyncTask import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import kotlinx.android.synthetic.main.activity_main.* import java.lang.Exception import java.net.URL class MainActivity : AppCompatActivity() { override fun onCreate(s.. 2020. 10. 13.
ANDROID SharedPreferences 사용 ANDROID SharedPreferences 사용 앱의 설정값을 저장할 용도로 많이 사용하는 것 package com.monosoft.sharedpreferencessample import android.content.Context import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log class MainActivity : AppCompatActivity() { val SP_NAME = "my_sp_storage" override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setConten.. 2020. 9. 25.
ANDROID 어댑터(adapter)란? ANDROID 어댑터(adapter)란? 보여지는 뷰와 그 뷰에 올릴 데이터를 연결하는 일종의 다리 역할을 하는 객체 어댑터가 데이터소스(배열, ArrayList, LinkedList, DB ...)와 어댑터 뷰(ListView, GridView) 사이에 있으면서 데이터 소스에 있는 데이터에 맞춰 어댑터 뷰를 변경합니다. 2020. 9. 15.