Как инициализировать несколько переменных в одном операторе? - PullRequest
0 голосов
/ 07 августа 2020
• 1000 * [ОБНОВЛЕНИЕ]
    JSONObject one = null, two = null , three = null ;
    one = two = three = new JSONObject();
    
    one.put("test", 1);

Ответы [ 2 ]

2 голосов
/ 07 августа 2020

Согласно вашему разделу [UPDATE] , вы можете сделать вот так:

JSONObject one = null, two = null, three = null;
Stream.of(one, two, three).forEach(it -> it = new JSONObject());

Но это все еще не инициализация с одним оператором.

0 голосов
/ 07 августа 2020

Это зависит от того, чего вы хотите достичь. Код, который вы разместили самостоятельно, работает.

one = two = three = new JSONObject();

Однако вы должны иметь в виду, что он создает только 1 объект и назначает его 3 различным переменным. Если этот объект является изменяемым, вам нужно быть осторожным. По сути, он равен этому:

JSONObject one = new JSONObject();
JSONObject two = one;
JSONObject three = two;

Если вы хотите создать 3 разных объекта и назначить их 3 различным переменным, это невозможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...