有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

请有人解释一下Java代码语法中的缩略语

来自dummy的一个问题。。。。以下代码的完整版本是什么? 如何在经典(长)版本的代码中解释它

FirebaseDatabase.getInstance()
                .getReference()
                .push()
                .setValue(new ChatMessage(input.getText().toString(),
                        FirebaseAuth.getInstance()
                                .getCurrentUser()
                                .getDisplayName())
                );

共 (2) 个答案

  1. # 1 楼答案

    它只是Java

    SomeClass1 instance        = FirebaseDatabase.getInstance();
    SomeClass2 reference       = instance.getReference();
    SomeClass3 push            = reference.push();
    SomeClass4 authInstance    = FirebaseAuth.getInstance();
    SomeClass5 currentUser     = authInstance.getCurrentUser();
    SomeClass6 displayName     = currentUser.getDisplayName();
    SomeClass6 message         = input.getText();
    SomeClass7 messageAsString = message.toString();
    SomeClass8 chatMessage     = new ChatMessage(messageAsString, displayName);
    
    push.setValue(chatMessage);
    

    注意:为了清晰起见,代码的格式是荒谬的。请不要在代码中使用类似于此示例的格式

  2. # 2 楼答案

    被调用的方法都返回一个对象(除了最后一个),而不是^{)。在其他一些语言中,可以将它们称为函数,而不是过程

    由于该方法返回一个对象,因此您可以依次对该返回的对象调用一个方法,并像这样链接调用

    这相当于这样的事情,如果这让你更清楚的话:

    <some class> var1 = FirebaseDatabase.getInstance();
    <some class> var2 = var1.getReference();
    <some class> var3 = var2.push();
    var3.setValue(new ChatMessage(input.getText().toString(),
                        FirebaseAuth.getInstance()
                                .getCurrentUser()
                                .getDisplayName())
    );