在 Kotlin 中,我们有一个漂亮的特性,比如扩展。甚至可以将更新的自定义方法添加到其对象已被实例化的超类中。该方法可以被代码中创建的对象访问。
我的问题基本上分为两个。
Java 或其他常用的编程语言中是否有此功能的概念?
如果之前的答案是否定的,是否有任何解决方法可以在 Java 或其他语言中实现扩展?
我正在尝试使用youtube api for javascript并且我得到'gapi.client.youtube is undefined'.
我已经浏览了链接:为什么来自Youtube Data Api V3的'gapi.client.youtube'未定义?,但无法得到很多帮助.
我的代码放在下面:
<script>
function load(){
gapi.client.setApiKey('AIzaSyARvwirFktEIi_BTaKcCi9Ja-m3IEJYIRk');
gapi.client.load('youtube', 'v3');
searchA();
//alert(gapi.client.youtube.channels);
}
function searchA() {
var q = 'pink floyd';
var request = gapi.client.youtube.channels.list({
part: 'statistics',
forUsername : 'GameSprout'
});
request.execute(function(response) {
var str = JSON.stringify(response.result);
alert(str);
});
Run Code Online (Sandbox Code Playgroud)
}
<script src="https://apis.google.com/js/client.js?onload=load">
Run Code Online (Sandbox Code Playgroud)
但它没有得到gapi.client.youtube.
谁能帮助我解决他的问题?
javascript youtube youtube-api youtube-javascript-api youtube-data-api
Kotlin在编译时本身具有非常漂亮的空值检查.
假设如下情况:
fun main(args: Array<String>) {
println("Please enter a number: ")
var num = readLine()!!.toInt()
println("Entered number is $num")
}
Run Code Online (Sandbox Code Playgroud)
如果用户没有输入任何值或任何Int代码将抛出NPE.相反,如果'?'.即使用null-safe,将不会抛出异常(尽管将回复null值).
我已经浏览了这个博客.但除了帮助客户编写代码之外,这个运算符'!!' 还有其他好处吗?