当前位置: 首页 > news >正文

自己动手建设网站过程网上开平台要多少钱

自己动手建设网站过程,网上开平台要多少钱,企业信息公共服务平台官网,网站集成支付宝教程Kotlin简介 2011年7月#xff0c;JetBrains推出Kotlin项目#xff0c;这是一个面向JVM的新语言 2012年2月#xff0c;JetBrains以Apache 2许可证开源此项目。 2016年2月15日#xff0c;Kotlin v1.0发布#xff0c;这被认为是第一个官方稳定版本。 在Google I/O 2017中JetBrains推出Kotlin项目这是一个面向JVM的新语言 2012年2月JetBrains以Apache 2许可证开源此项目。 2016年2月15日Kotlin v1.0发布这被认为是第一个官方稳定版本。 在Google I/O 2017中Google宣布在Android上为Kotlin提供最佳支持取代java成为官方开发语言。 函数和变量 kotlin中的函数和变量可以直接声明在文件中 使用fun关键字声明函数 使用var关键字声明变量可读可写变量 使用val关键字声明只读变量不可修改相当于java中的final 创建对象只需调用构造器即可不需要java中的new关键字 fun main(){var age:Int 18 }fun doubleNumber(x:Int):Int{return x*2 }声明一个数组使用arrayOf关键字 private val studyList arrayOf(语文,数学,英语)静态函数 比如工具类中常用的dp2px() 直接写在Util.kt文件中 private val displayMetrics Resources.getSystem().displayMetrics fun dp2px(dp:Float):Float{return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,dp,displayMetrics) }那么在kotlin中调用的时候直接dp2px(15f)即可。在java中调用使用Utilkt.dp2px(15f)需要在文件名后边加上kt后缀 2. 使用object关键字声明 object Util{private val displayMetrics Resources.getSystem().displayMetricsfun dp2px(dp:Float):Float{return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,dp,displayMetrics)} }在kotlin中调用Util.dp2px(15f)在java中调用Util.INSTANCE.dp2px(15f) 使用object关键字声明相当于创建了一个类的单例对象 使用companion关键字 伴生对象 比如application class BaseApplication : Application(){companion object{private lateinit var currentApplication: Contextfun currentApplication():Context{retun currentApplication}}override fun onCreate(){super.onCreate()currentApplication this} }在kotlin中调用BaseApplication.currentApplication()然后在java中调用BaseApplication.Companion.currentApplication() 类 依然使用class关键字声明一个类 class User{var name:String?null//set,get方法要紧跟成员变量且里边要使用field关键字//set,get方法默认可以不写set(value){field value}get(){field}constructor(){}constructor(name: String?){this.name name} }继承和实现接口只需要一个冒号:不同的是继承的类需要加上一个括号()。 class MainActivity:AppcompatActivity(),View.OnClickListener{... }但是需要注意的是如果在类中显式声明了构造器就不能加上这个括号() 在调用父类的构造器或者本类中其他构造器都要使用:比如 class MyView : View {constructor(context:Context):this(context,null){}constructor(context:Context, attr:AttributeSet?):super(context,attr){} }另外对一个类成员的setget方法的访问可以直接使用.成员变量名的方式: user.name xxxxxx //进行赋值相当于调用了setName()方法如果是在java中去调用不能使用user.name只能使用其set,get方法。但是如果使用某一个成员变量需要在kotlin中声明这个变量的时候使用JvmField注解 JvmField var name:String?null匿名内部类 创建一个一个匿名内部类需要object关键字 比如 call.enqueue(object:Callback){override fun onResponse(call:Call, response:Response){}override fun onFailure(call:Call, e:IOException) }另外在内部类中使用外部类的成员变量在java中为Class.this.xx在kotlin中要使用thisClass.xx 静态内部类 静态内部类可以直接在一个类中使用class声明一个内部类这个类可以使用伴生对象如果要使用普通的嵌套内部类则需要inner class去修饰 另外internal关键字可以去修饰类和方法表示当前module可见别的module不可见 接口和抽象类枚举类 接口(interface xxx)和抽象类(abstract class xxx)的声明与java中相同 但是枚举类不一样 class SdutyList{enum class Type{MATH{...}} }kotlin中的类默认都是被final关键字修饰的不能被继承方法不能被重写如果想要一个类可以被继承需要使用abstract关键字修饰方法需要使用open修饰才可以重写。 判断语句 if 和 when if(code in 100..199){} //表示code是否在100到199双闭区间另外使用when关键字相当于java中的switch when (code){//这里可以支持表达式in 100..199-{}in 200..299-{}else-{} }遍历和循环 遍历 除了常规的for遍历一个数组或者集合 //比如有一个users的集合 var passUsers ArrayListUser() for(user in users){if(user.age 18){passUsers.add(user)} } 可以使用kotlin提供的操作符去简化上述代码 //使用forEach操作符 users.forEach({user:User-if(user.age 18){passUsers.add(user)} }) //如果forEach()中接收的参数只是一个lambda表达式可以将{}提到括号外边且括号可以省略 users.forEach{user:User-if(user.age18){passUsers.add(user)} } //另外也可以使用类型推断不用声明user的类型 users.forEach{user-if(user.age18){passUsers.add(user)} } //最后如果一个lambda表达式只有一个参数那么这个参数可以省略不写而会有一个默认的隐式参数it:User users.forEach{if(it.age18){passUsers.add(it)} }还有这个例子中相当于过滤一些user只要符合条件的user那么可以使用filter操作符来简化 //这里直接过滤出年龄大于等于18的用户 passUsers.add(users.filter{ it.age 18 })循环 使用repeat关键字 //注意这里是一个隐式参数it:Int repeat(100){println(it) }for-i循环 for(i in 0..99){println(i) }集合 使用库函数listOf()或者mapOf()使用对象 var studyList:ListLesson ArrayList(); var map:MapInt, String HashMap()但是需要注意的是上面所创建的集合元素都是不可修改的无法进行增删 所以如果需要元素可变一般使用: arrayListOf(),mutableListOf(),mutableMapOf(),hashMapOf()var studyList:ArrayListLesson new ArrayList() kotlin中的类系统 JavaKotlinObjectAnyvoidUnit kotlin中基本数据类型 Kotlin基本数据类型位宽度Char(字符型)Boolean(布尔类型)Byte8(字节型)Short16(短整型)Int32(整型)Long64(长整型)Float32(浮点型)Double64(双精度浮点型) 变量的可空控制 kotlin中将变量分为可空和不可空两种类型。 //这里的user是一个不可空类型如果赋值为null则会报错 var user:User //这里的user是一个可空类型需要加一个问号? var user:User?null;那么如果想要调用一个可空类型的变量有两种方式 user!!.getName() //表示强制调用不管是否为null user?.getName() //表示安全调用如果不为null才调用虽然这里可以避免空指针但是user为null肯定是有问题的希望在编写代码的时候早发现这些问题。 一个错误的示例 fun a(name:String){... } a(user?.getName()!!)
http://www.hkea.cn/news/14464377/

相关文章:

  • 做垂直类网站整合营销传播最基础的形式是
  • 连云港市赣榆区建设局网站织梦做的网站怎么样
  • 员工入职 在哪个网站做招工网站登陆注册怎么做
  • 建网站的网络公司的名称以及服务服装设计有哪些网站
  • 手机怎样建网站记录网站建设的基本步骤
  • 可以直接观看的网站正能量石家庄制作网站软件
  • 陕西网站建设科技网站开发
  • 中英企业网站模板门户网站设计要点
  • 特效音网站wordpress实名认证
  • 会外语和做网站企业公示信息查询系统全国官网
  • 网站弹窗怎么做做网站赚钱流量
  • 网站手机端排名怎么做站点建立网站的方法
  • 银州手机网站建设手机字体下载大全免费网站
  • 上海网站设计与开发公司网站建站流程图
  • 黄石手机网站建设怎样做网络推广方案服务
  • 遵义公司网站搭建多少钱广东商城网站建设价格低
  • 开发手机网站aso优化什么意思是
  • 专业的顺的网站建设广告代理公司排名
  • 唐山的网站建设wordpress图库主题
  • 网站建设是前端的吗互动力 网站建设
  • 天府新区建站公司ui设计师工作内容怎么写
  • 客户网站留言免费建设小学校网站
  • 哪个网站可以做一对一老师招标网中标公示
  • wordpress 网站重置动漫网站设计源代码
  • 网站建设项目团队组织结构图设计定制型网站建设
  • 手机网站建设 移商动力怎么找广告商接广告
  • 织梦 电影网站 模板常州网站建设平台
  • 青岛专业做网站优化帮齐家网做的网站
  • 商城网站建设所必备的四大功能是哪些网站建设题库含答案
  • 电子商务网站设计与维护新手做网站推荐