0

移动开发新手,并认为我会跟随本教程。希望这是一个简单的问题。如果有人能告诉我 --> 被称为什么(它是一个指针吗?)或者是什么导致 (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) 和 --> ,由于某种原因在我的编辑器或代码中不起作用。

4

2 回答 2

1

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

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

于 2018-05-18T01:36:43.613 回答
0

基本上,(e) -> {...}它是一个 lambda,您可以在此处阅读有关此内容的更多信息https://kotlinlang.org/docs/reference/lambdas.html,但在基本术语中,它是一个可以执行的代码块。e是来自调用者的参数,并且只是->表示 lambda 后跟代码的语法,您提到的灰色字母中的“质量”只是compress方法中参数的名称,IDE 会显示它以便您可以在不查找文档或源代码的情况下正确填充方法调用。

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

于 2018-05-18T01:37:24.793 回答