private int nColumns = 1;
public void onClick(View view) {
nColumns = nColumns == 1 ? 2 : 1; //Cannot understand this line.
Could anyone please explain?
private int nColumns = 1;
public void onClick(View view) {
nColumns = nColumns == 1 ? 2 : 1; //Cannot understand this line.
Could anyone please explain?
It is a ternary operator.
The part (nColumns == 1) ? 2 : 1;
basically means if nColumns
is equal to 1
then the first one, 2
, is selected and else the latter, 1
.
That value is then stored in the same variable nColumns
.
So if it is equal to 1 then it gets 2 else it gets 1.
It does the same as the following:
if(nColumns == 1)
nColumns = 2;
else
nColumns = 1;
if the number of nColumns is 1 return 2 else return 1 and assign it to it slef which is nColumns.
if(nColumns==1)
nColumns=2;
else
nColumns=1;