很棒的教程,但无法复制代码



移动开发的新手,我想我会按照本教程进行操作。 希望这是一个简单的问题。 如果有人能告诉我 --> 叫什么(它是一个指针吗?)或者是什么原因导致 (e) --> 代码在键入后呈浅灰色,我可以在这里对我自己的问题做更多的研究。

youtube.com/watch?v=RagA8g9A5Qc

在下面的视频链接中,在10:58(暂停视频)中,您将看到一些代码显示

uploadTask.addOnFailureListener ((e) --> { {finish(); }};

在视频中的10:42,您会看到类似的符号

`mProfileImage.setOnClickListener((view) --> {saveUserInformation(); }};`

有人可以建议 --> 叫什么以及我如何在您开始键入时让 (e) --> 出现在自动填充函数对话框中吗?我是否缺少文件或类?

我认为这可能是一个IDE设置,因为在他的视频中的这些代码行上方,您会看到以下行:

- bitmap.compress(Bitmap.CompressFormat.JPEG, 20, baos);

但是在我的 IDE 中,我看到了"质量"一词

- bitmap.compress(Bitmap.CompressFormat.JPEG, quality 20, baos); 

在键入值 20 时显示。这是一种浅灰色,类似于他的代码中的 (e) 和 -->,由于某种原因在我的编辑器或代码中不起作用。

假设您使用的是Java 8+,则->运算符用于lambda函数。

lambda 是一个匿名函数,对于您只使用一次或作为参数传递的函数很有用。在此处阅读更多内容。

基本上,(e) -> {...}是一个lambda,你可以在这里阅读更多关于这个 https://kotlinlang.org/docs/reference/lambdas.html,但从基本术语来说,它是一个可以执行的代码块。e是来自调用方的参数,->只是表示 lambda 后跟代码的语法,您提到的灰色字母中的"质量"只是compress方法中参数的名称,IDE 会显示该名称,以便您可以正确填充方法调用而无需查找文档或源代码。

编辑:另外,请记住,在Java和Kotlin中,应该->而不是-->,这可能是您的"灰色字母"问题的根源。

最新更新