일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 숫자
- kotlin
- FIle
- 시큐어코딩
- snowpack
- webpack
- 쿠키
- 스프링
- sub query
- 왕초보
- 답글
- 안드로이드
- 미니게임
- 상속
- java
- 스타일보험
- git
- degit
- 버전일치
- 함수
- Spring
- 코틀린
- SQL
- Android
- 게시판
- Spinner
- parcel
- React
- 오버라이드
- java#왕초보
- Today
- Total
목록Coding/Kotlin (24)
YSHUSH

야구선수 관리 프로그램을 만들어본다. 기본적인 CRUD와 txt파일로 저장, 타율순으로 정렬과 같은 기능도 넣어보자 Dto Human open class Human(var number:Int = 0, var name:String = "", var age:Int = 0, var height:Double = 0.0) { /* var number:Int = 0 var name:String = "" var age:Int = 0 var height:Double = 0.0 constructor(){} constructor(number: Int, name: String, age: Int, height: Double) { this.number = number this.name = name this.age = age t..

import java.io.* import java.util.* fun main(args: Array) { // 저장매체 : file, Database val outString:String = "안녕하세요 Hello" val path = "D:\\myfile\\myfile.txt" // 파일 목록 val files = File("D:\\").listFiles() println(Arrays.toString(files)) // 파일 복사 // File(path).copyTo(File("D:\\myfile\\myfile2.txt")) // 파일 내용 출력 File(path).forEachLine { println(it) } // text 로 읽기 val text = File(path).readText() pr..

Map 은 한쌍으로 관리가 되는데 key값과 value값을 사용한다. 기본 Map 사용법 - 수정, 삭제, 추가 불가 fun main(args: Array) { val langMap:Map = mapOf(1001 to "kotlin", 1002 to "Java", 1003 to "react") for((key, value) in langMap){ println("key=$key, value=$value") } println(langMap[1002]) println(langMap.get(1001)) println(langMap) println(langMap.keys) } 가변형 Map인 mutableMap의 사용법 + 정렬방법 - 수정, 삭제, 추가 가능 // 정렬 // var sortedByValue =..

Collection은 수집이라는 뜻으로 ArrayList ・ LinkedList ・ HashMap ・ TreeMap 등이 있다 일반 리스트 사용 fun main(args: Array) { // 추가, 삭제 불가능 var numbers:List = listOf(1, 2, 3, 4, 5) for(n in numbers) print("$n ") println() var names:List = listOf("one", "two", "three") for(name in names){ println(name) } println( names.size ) println(names.get(1)) println(names.indexOf("three")) println(names.contains("two")) // 여러가지..

Generic은 템플릿, 형태라는 뜻 자바에서는 class Box{ // 자료형 변수 private T value; Box(T value){ this.value = value; } public T getValue(){ return value; } } 자료형 변수로 이렇게 사용했었다. 코틀린에서는 class Box(var value: T) 이렇게만 쓰면 끝! 함수호출부 fun main(args: Array) { val box:Box = Box(123) println(box.value) val sBox:Box = Box("my world") println(sBox.value) val iBox = Box(234) println(iBox.value) } 함수로 이용 fun add(a:T, b:T, op:(T, ..

Composition은 합성이라는 뜻으로 class안에서 class를 사용하는 것을 의미한다. class Car class Car(val name: String, val power:String){ private var engine = Engine(power) fun startEngine() = engine.start() fun stopEngine() = engine.stop() } class Engine class Engine(power: String){ fun start() = println("Engine has been started") fun stop() = println("Engine has been stopped") } 함수호출부 fun main(args: Array) { val car = Ca..

상속 관계의 클래스를 만들어보자 class Animal open class Animal(val name:String) interface Pet interface Pet{ var category:String val msgTags:String get() = "I love my pet!" var species:String fun feeding() fun patting(){ println("Keep patting") } } class Cat class Cat(name: String, override var category: String) : Pet, Animal(name){ override var species: String = "cat" override fun feeding() { println("Feedin..

interface Foo interface Foo{ val bar:Int fun method(qux:String) } class createFoo class createFoo(val _bar:Int) :Foo{ override var bar: Int = _bar override fun method(qux: String) { println("$bar $qux") } } 함수출력부 fun main(args: Array) { var cf = createFoo(123) cf.bar = 234 println(cf.method("hi")) } 클래스는 다중상속이 되지 않지만 인터페이스는 다중 상속이 가능하다. interface Bird interface Bird{ val wings:Int fun fly() fun ..

추상클래스는 일반 메소드와 추상 메소드 모두 포함시킬 수 있다. 예제1 Printer class와 myPrinter 두 개의 클래스가 있을때 객체 생성 방법으로 달리 적어보면 abstract class Printer{ abstract fun print() fun method() = println("Printer method()") } class myPrinter:Printer(){ override fun print() { println("출력합니다") } } 이렇게 적을 수 있다. abstract class Printer{ abstract fun print() fun method() = println("Printer method()") } val myPrinter = object : Printer(){ ..

예제1 Base class open class Base(var firstname:String = "코니", val lastName:String = "김", var age:Int){ /* class Base{ var firstname:String val lastName:String var age:Int constructor(firstname:String, lastName:String, age:Int){ this.firstname = firstname this.lastName = lastName this.age = age } */ open val fullName:String get() = "$firstname $lastName" } 주석처리된 부분이 축약되어 Base class의 생성자로 들어가면 이런 형태..