Initializing Multiple Variables to the Same Value in Java

Initializing multiple variables to the same value in Java

String one, two, three;
one = two = three = "";

This should work with immutable objects. It doesn't make any sense for mutable objects for example:

Person firstPerson, secondPerson, thirdPerson;
firstPerson = secondPerson = thirdPerson = new Person();

All the variables would be pointing to the same instance. Probably what you would need in that case is:

Person firstPerson = new Person();
Person secondPerson = new Person();
Person thirdPerson = new Person();

Or better yet use an array or a Collection.

How to define multiple variables in single statement

This is not possible, but you also don't need to call parseFile twice.

Write your code like this:

int [] temp = parseFile(file);
start = temp[0];
stop = temp[1];

Python (I believe) supports multiple return values. Java obeys C conventions, and so doesn't permit it. Since that isn't part of the language, the syntax for it isn't either, meaning slightly gross hacks like the temp array are needed if you're doing multiple returns.

How do I set multiple int's equal to the same number ? Java

use this line of code for initializing all the variables at once

r = g = b = index = 0;

or else initialize when you declare like:

int index=0, r=0, g=0, b=0;

Initialize multiple variables at the same time after a type has already been defined in Java?

I think you are confused as to be behavior of int bonus, sales, x, y = 50;. It initializes y to 50 and leaves the rest uninitialized.

To initialize all of them to 50, you have to:

int bonus = 50, sales = 50, x = 50, y = 50;

You can then change their values:

bonus = 25;
x = 38;
sales = 38;

// or compact
bonus = 25; x = 38; sales = 38;

// or to same value
bonus = x = sales = 42;

Unlike the C language where you can use the comma syntax anywhere, in Java you can only use that when declaring the variables, or in a for loop: for (i=1, j=2; i < 10; i++, j+=2)

Initializing multiple variables on the same line

You may use destructing declaration for this (works for up to 5 variables declaration, if you need more see https://stackoverflow.com/a/55891181/13968673):

inline fun <reified T> nulls() = List<T?>(5) { null }

var (etxtUserName, etxtContact, etxtPassword) = nulls<EditText?>()


Related Topics



Leave a reply



Submit