initialize an array of booleans

B

bob smith

From: bob smith <[email protected]>

Is there any easy way to initialize an array of booleans like this?

boolean b[] = new boolean(false)[100];

--- BBBS/Li6 v4.10 Dada-1
* Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24
 
E

Eric Sosman

To: bob smith
From: Eric Sosman <[email protected]>

Is there any easy way to initialize an array of booleans like this?

boolean b[] = new boolean(false)[100];

Sure: `boolean b[] = new boolean[100];' will do it, although
`boolean[] b = new boolean[100];' is usually considered better style.

... but that's just because a freshly-created boolean is `false'
until and unless it's given another value, just as a freshly-created int is
zero. To initialize with a lot of `true's you could write

boolean[] b = new boolean[]{true,true,true, /*etc.*/};

.... but that would be tedious, error-prone, and inefficient (you'd be dismayed
at the number of byte code instructions generated). It'd be better to use a
loop, either in open code:

boolean[] b = new boolean[100];
for (int i = 0; i < b.length; ++i)
b = true;

.... or with the prepackaged array-filling method:

boolean[] b = new boolean[100];
java.util.Arrays.fill(b, true);

--
Eric Sosman
(e-mail address removed)

--- BBBS/Li6 v4.10 Dada-1
* Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24
 
L

Lew

To: bob smith
From: Lew <[email protected]>

Is there any easy way to initialize an array of booleans like this?



boolean b[] = new boolean(false)[100];

boolean b[] = new boolean [100];

<http://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html#jls-15.10.1>

If you want to initialize array elements to a value that is not the default you
have to loop.

Or use the 'java.util.Arrays' class.
<http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#fill(boolean[],
boolean)>

Every Java programmer should know the collections framework and key utility
classes like 'Arrays'.

--
Lew

--- BBBS/Li6 v4.10 Dada-1
* Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24
 
R

Roedy Green

To: bob smith
From: Roedy Green <[email protected]>

Is there any easy way to initialize an array of booleans like this?

boolean b[] = new boolean(false)[100];

for basic info on arrays including initialisation, see
http://mindprod.com/jgloss/array.html

For this kind of info, a basic text book, even an out-of-date free one is
invaluable.
--
Roedy Green Canadian Mind Products
http://mindprod.com
The greatest shortcoming of the human race is our inability to understand the
exponential function.
~ Dr. Albert A. Bartlett (born: 1923-03-21 age: 89)

--- BBBS/Li6 v4.10 Dada-1
* Origin: Prism bbs (1:261/38)
--- Synchronet 3.16a-Win32 NewsLink 1.98
Time Warp of the Future BBS - telnet://time.synchro.net:24
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

multiple inheritance 5
Bluetooth programming 0
multiple inheritance 14
multiple inheritance 6
Bluetooth programming 0
multiple inheritance 5
Bluetooth programming 0
Swing 7

Members online

Forum statistics

Threads
473,767
Messages
2,569,572
Members
45,045
Latest member
DRCM

Latest Threads

Top