• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: displaying an integer list
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: displaying an integer list


  • Subject: Re: displaying an integer list
  • From: Alex Johnson <email@hidden>
  • Date: Tue, 27 Oct 2009 09:17:19 -0700


Just to summarize, the problem was that:

new NSArray( new int [] { ... } )

translates to the single-object NSArray constructor: NSArray( Object ), whereas:

new NSArray( new Integer [] { ... } )

translates to the object-array constructor: NSArray( Object [] ), because an int [] is not a subtype of Object [] (unlike an Integer []), and I don't think Java will auto-box an int [] into an Integer [].

This has been mentioned on the list before, but using Java's auto-boxing -- especially without using generics -- causes a lot of these head-scratcher bugs. My advice is to disable it, by telling the compiler to treat boxing and unboxing as errors.


Alex Johnson
アレックス ジャンサン


Hi!
You don't have to do new Integer(x) for all the integers. I have this on
my code and it works:
private NSArray<Integer> monthList = new NSArray<Integer>( new Integer[]
{
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } );


Try disabling 'Boxing and unboxing conversions:'  in Preferences -> Java -> Compiler -> Errors/Warnings -> Potential programming problems


I have a wo popup button

YearPopUpButton: WOPopUpButton {

    item = intSelection;

    list = YearList;

    selection = anAppliedClass.appliedYear;

}

and the relevant code is

public NSArray YearList = new NSArray(new int[]{2000, 2001, 2002,

2003, 2004, 2005, 2006, 2007, 2008, 2009});

public int intSelection;

appliedYear is an Integer.

When run, I get:

While trying to set the field "intSelection" on an object of type

edu.stanford.ee.classmgmt.apply.ui.AppliedClassPage we expected a int

but received a [I with a value of [I@70d9cbcb. This often happens if

you forget to use a formatter.

Setting a formatter doesn't seem to help. I'm guessing I need some

indirection to setting the appliedYear value, but it seems the error

is more due to the fact that its not liking the NSArray. Do I need to

generate a list of new Integer(2000), new Integer(2001).. etc?

Attachment: smime.p7s
Description: S/MIME cryptographic signature

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: displaying an integer list
      • From: "Sobanski, Jedrzej" <email@hidden>
References: 
 >displaying an integer list (From: Joe Little <email@hidden>)
 >Re: displaying an integer list (From: Miguel Arroz <email@hidden>)
 >Re: displaying an integer list (From: Joe Little <email@hidden>)
 >Re: displaying an integer list (From: Miguel Arroz <email@hidden>)
 >Re: displaying an integer list (From: Joe Little <email@hidden>)
 >Re: displaying an integer list (From: David LeBer <email@hidden>)
 >Re: displaying an integer list (From: Joe Little <email@hidden>)
 >Re: displaying an integer list (From: David LeBer <email@hidden>)

  • Prev by Date: Re: displaying an integer list
  • Next by Date: Re: 2009 Survey Results
  • Previous by thread: Re: displaying an integer list
  • Next by thread: Re: displaying an integer list
  • Index(es):
    • Date
    • Thread