美文网首页
Kotlin 单例对象

Kotlin 单例对象

作者: wanTag | 来源:发表于2018-08-23 15:30 被阅读9次
    Kotlin使用关键字object加以修饰,并称之为“单例对象”,相当于java的工具类
    与不同的类相比,像一个阉割的简化类
    实例
    /***
     * 关键字object用来声明单例对象,就像Java中开发者自己定义的Utils工具类。
     * 其内部的属性等同于Java中的static静态属性,外部可直接获取属性值。
     */
    object DateUtil {
    
        /***
         * 返回日期时间
         */
        val nowDateTime: String
        //外部访问DateUtil.nowDateTime时,会自动调用nowDateTime附属的get方法得到它的值
            @SuppressLint("SimpleDateFormat")
            get() {
                val sdf = SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
                return sdf.format(Date())
            }
    
    
        /***
         * 返回日期字符串
         */
        val nowDate: String
            @SuppressLint("SimpleDateFormat")
            get() {
                val sdf = SimpleDateFormat("yyyy-MM-dd")
                return sdf.format(Date())
            }
    
    
        @SuppressLint("SimpleDateFormat")
        fun nowFormatTime(format: String = ""): String {
            val ft: String = format
            val sdf = if (!ft.isEmpty()) {
                SimpleDateFormat(ft)
            } else {
                SimpleDateFormat("yyyyMMddHHmmss")
            }
            return sdf.format(Date())
        }
    
    }
    
    
    
    使用
    private var count: Int = 0
    
    btn_extend_date.setOnClickListener { v ->
         text_extend_date.text = "拓展函数" + when (count % 3) {
              0 -> "当前日期时间为${DateUtil.nowDateTime}"
              1 -> "当前日期为${DateUtil.nowDate}"
              else -> "当前日期格式${DateUtil.nowFormatTime("yyyy年MM月dd日 HH时mm分")}"
          }
          count++
    }
    

    相关文章

      网友评论

          本文标题:Kotlin 单例对象

          本文链接:https://www.haomeiwen.com/subject/mccmiftx.html