Forwarded from LetITFly News (LetITFly | 让技术飞)
(以上内容转自纯纯写作用户群,已经过 @Drakeet 同意)
duangsuse 真应该啥时候自己好好了解一下 GUI 系统(
现在连 HTML / CSS 盒模型都不知道呢?
欸话说 HTML / CSS 才是前端的代表吧,Qt、Android、Java AWT/Swing 都不如现在的 HTML/CSS 可以体现前端的技术?
现在连 HTML / CSS 盒模型都不知道呢?
欸话说 HTML / CSS 才是前端的代表吧,Qt、Android、Java AWT/Swing 都不如现在的 HTML/CSS 可以体现前端的技术?
Hinnka Zhou
有点不太理解这段代码,什么情况下泛型会被擦除,什么情况不会?
[Supress(unchecked)]
fun <K> createBaseViewHolder(view: View): K
var temp = getClass(), z = null : Class;
while z.isNull and temp.isNull
z = getGenericKotlinClass(temp).instance
temp = temp.superClass
var k: K
if z.isNull
k = BaseViewHolder(view) as K
else
k = createKotlinGenericInstance(z, view)
return k.notNull ? k or BaseViewHolder(view) as K
... 待会讲 Haskell、Agda 什么的,唉时间好少啊
duangsuse::Echo
[Supress(unchecked)] fun <K> createBaseViewHolder(view: View): K var temp = getClass(), z = null : Class; while z.isNull and temp.isNull z = getGenericKotlinClass(temp).instance temp = temp.superClass var k: K if z.isNull k = BaseViewHolder(view)…
首先声明:我也?不知道啥是 ViewHolder 模型,我只是想知道这代码大概是做什么的
K 这个 parametric polymorphism (迫真)(其实就是 Java 的泛型实现)参数 大概是 View 的子类?(假)
我只看中间那个循环...
temp 是当前 JavaClass
z 是当前 JavaClass 的 KotlinGenericClass <K>
循环
大概的意思就是 因为我们知道 Java OO 类型系统里顶部的类型就是
而它的超类
所以 temp 不可能为 null(因为在循环开始时它是 thisClass,而循环体里我们只 assign 了它的超类到它,这是遍历超类链)
那么我们问 && 右边的 z 是不是 null 即可判断 while 条件是否成立
也就是说 只要方法局部符号 z 为 null,就不断循环超类链条 ,直到 z(temp.genericKlassInstance)不为空
不过有可能死循环呢... 因为 Object::class 的超类是 Object::class?
#algor btw. 我花了一点时间来讲这个完全没有用的东西... 是很简单的算法,只是因为在准备些什么?(
是学习如何分析代码(迫真)(删除)
K 这个 parametric polymorphism (迫真)(其实就是 Java 的泛型实现)参数 大概是 View 的子类?(假)
我只看中间那个循环...
temp 是当前 JavaClass
z 是当前 JavaClass 的 KotlinGenericClass <K>
循环
temp = thisClass, z = null
while (both z and temp is null)
z = temp.genericKlassInstance
temp >= superClass
大概的意思就是 因为我们知道 Java OO 类型系统里顶部的类型就是
java.lang.Object而它的超类
Object.getClass().getSuperclass() 是它本身(Object)所以 temp 不可能为 null(因为在循环开始时它是 thisClass,而循环体里我们只 assign 了它的超类到它,这是遍历超类链)
那么我们问 && 右边的 z 是不是 null 即可判断 while 条件是否成立
也就是说 只要方法局部符号 z 为 null,就不断循环超类链条 ,直到 z(temp.genericKlassInstance)不为空
不过有可能死循环呢... 因为 Object::class 的超类是 Object::class?
#algor btw. 我花了一点时间来讲这个完全没有用的东西... 是很简单的算法,只是因为在准备些什么?(
是学习如何分析代码(迫真)(删除)
duangsuse::Echo
不过可以由此看出 duangsuse 的伪代码写的真是越来越伪了(逃
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse::Echo
首先声明:我也?不知道啥是 ViewHolder 模型,我只是想知道这代码大概是做什么的 K 这个 parametric polymorphism (迫真)(其实就是 Java 的泛型实现)参数 大概是 View 的子类?(假) 我只看中间那个循环... temp 是当前 JavaClass z 是当前 JavaClass 的 KotlinGenericClass <K> 循环 temp = thisClass, z = null while (both z and temp is null) …
你们猜猜还可以怎么写(
或者使用
#fix ... 打住... 上面那个 and 还真是有理由的,因为没有它会无限循环...
我把
btw.
btw. Kotlin 里各种类啊对象实例啊关系又双有变化气死
... 什么
btw. 唉... 我对 Java 的理解还是不过关啊
Java 就有这么难么(笑)
打住,上面那个是错的,而且我还不熟悉泛型 variance... 什么鬼关系
本来还想拿 Haskell Clojure?Scala?(其实我不会 Scala,不过可以学)?Agda 写一个(迫真)(其实我也不会 Agda 如此高级的证明...)
反正 Kotlin 他老人家是多范式,自然也支持函数式特性的,那顺便 FP 一下吧...(虽然我递归什么的很菜)
fold... 这类好像不行,有种反着的 fold 貌似可以生成序列,忘记叫啥名了...
generateSequnece... 类型推导老是错误,我看着结果也有点蒙蔽... 好像就是一点 variance 和 nullability 的问题
用 Coroutine 吧... 其实我貌似也可以用更高级的 FP 特性的... 不过我都不会... 感觉学习遇到瓶颈了... 我好菜啊(悲) 🥕
编译不了... 没加依赖包... 算了... 对自己的技术好绝望啊,啥都不会...
var classChianItem = thisClass, genericKlassFound = null
while (genericKlassFound.isNull)
genericKlassFound = classChianItem.getGenericKClassInstance()
classChianItem = classChianItem.getSuperclass()
或者使用
Iterator<Class>
... 算了比较麻烦,Kotlin 有内建的 lazy sequence generator>>> fun <T> Class<out T>.ancestors(): Iterator<Class<T>> {
... return object: Iterator<Class<T>> {
... var currentClass = this
... override fun hasNext(): Boolean = this.equals(Object::class)
... override fun next(): Class<T> = Object::class
... }
... }#fix ... 打住... 上面那个 and 还真是有理由的,因为没有它会无限循环...
Object::javaClass.getSuperclass() //=> null
我把
static method 搞成 Class<Object> 了?btw.
Object::javaClass 和 Object::class.java 是不一样的?val T.javaClass: java.lang.Class<T>class java.lang.Objectbtw. Kotlin 里各种类啊对象实例啊关系又双有变化气死
val a = Object::class.java
a.getClass() // unresolved reference
a::class //=> class java.lang.Object
1::class //=> kotlin.Int
... 什么
val T.javaClass: Class<T>btw. 唉... 我对 Java 的理解还是不过关啊
Java 就有这么难么(笑)
打住,上面那个是错的,而且我还不熟悉泛型 variance... 什么鬼关系
本来还想拿 Haskell Clojure?Scala?(其实我不会 Scala,不过可以学)?Agda 写一个(迫真)(其实我也不会 Agda 如此高级的证明...)
反正 Kotlin 他老人家是多范式,自然也支持函数式特性的,那顺便 FP 一下吧...(虽然我递归什么的很菜)
fold... 这类好像不行,有种反着的 fold 貌似可以生成序列,忘记叫啥名了...
generateSequnece... 类型推导老是错误,我看着结果也有点蒙蔽... 好像就是一点 variance 和 nullability 的问题
用 Coroutine 吧... 其实我貌似也可以用更高级的 FP 特性的... 不过我都不会... 感觉学习遇到瓶颈了... 我好菜啊(悲) 🥕
val objectAncesSeq = sequence {
var chainItem = HashMap::class.java
while (chainItem != null) {
yield(chainItem)
chainItem = chainItem.getSuperclass()
}
}编译不了... 没加依赖包... 算了... 对自己的技术好绝望啊,啥都不会...
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from 神奇的笔记 (神楽坂 立音)
解决方法是自己下载 Blender 源码并加入最新的 CUDA 驱动程序重新编译(或者等 Blender 2.8 就有官方支持了)
Forwarded from neoFelhz's Channel | 山雨欲来风满楼 (neo喵 | 蒟蒻 | 肥宅 | 🐈)
V2EX
想输入网址获取整站邮箱号,有这样的网站吗? - V2EX
奇思妙想 - @yaokwok - 想做个网站,输入网址自动爬虫获取整站邮箱号或手机号,不知道目前有没有这样的网站,如果没有的话,你们有没有这样的需求?
#cs #recommended http://erikdemaine.org/
《算法导论》公开课中有一名讲师,他叫Erik Demaine。12岁就进入了Dalhousie大学,2年后,14岁即拿到学士学位。之后进入waterloo大学读博,15岁时拿到数学硕士学位,2001年20岁时拿到博士学位,其博士论文被评为加拿大最优秀的4篇论文之一。
这位同学拿到博士学位后,直接就被MIT计算科学与人工智能实验室聘为助理教授,以20岁的年纪成为MIT历史上最年轻的教授。2003年,年仅22岁获得麦克阿瑟天才奖。2005年,以24岁的年纪升为副教授有兴趣的话(http://erikdemaine.org/)
— https://www.cnblogs.com/studyNT/p/7857839.html
《算法导论》公开课中有一名讲师,他叫Erik Demaine。12岁就进入了Dalhousie大学,2年后,14岁即拿到学士学位。之后进入waterloo大学读博,15岁时拿到数学硕士学位,2001年20岁时拿到博士学位,其博士论文被评为加拿大最优秀的4篇论文之一。
这位同学拿到博士学位后,直接就被MIT计算科学与人工智能实验室聘为助理教授,以20岁的年纪成为MIT历史上最年轻的教授。2003年,年仅22岁获得麦克阿瑟天才奖。2005年,以24岁的年纪升为副教授有兴趣的话(http://erikdemaine.org/)
— https://www.cnblogs.com/studyNT/p/7857839.html
duangsuse::Echo
#cs #recommended http://erikdemaine.org/ 《算法导论》公开课中有一名讲师,他叫Erik Demaine。12岁就进入了Dalhousie大学,2年后,14岁即拿到学士学位。之后进入waterloo大学读博,15岁时拿到数学硕士学位,2001年20岁时拿到博士学位,其博士论文被评为加拿大最优秀的4篇论文之一。 这位同学拿到博士学位后,直接就被MIT计算科学与人工智能实验室聘为助理教授,以20岁的年纪成为MIT历史上最年轻的教授。2003年,年仅22岁获得麦克阿瑟天…
... 说实话,看看公开课的 timeline tags
我觉得里面的内容 《算法图解》 这本如此简单的书里几乎都覆盖了... 这就是大学生们的课程...
我觉得里面的内容 《算法图解》 这本如此简单的书里几乎都覆盖了... 这就是大学生们的课程...