Results 1 to 7 of 7

Thread: Casting problem

  1. #1
    John_28 is offline Member
    Join Date
    May 2008
    Posts
    8
    Rep Power
    0

    Default Casting problem

    Hi,
    can anyone tell me how can i cast Object[] to String[]
    am trying this,

    Object[] Value={abc,xyz}

    String[] Value1=(String[]) Value1;

    this not working if anyone knw how to do this plz help me.

    Thanks in advance.

  2. #2
    sukatoa's Avatar
    sukatoa is offline Senior Member
    Join Date
    Jan 2008
    Location
    Cebu City, Philippines
    Posts
    556
    Rep Power
    10

    Default

    I don't know if that is allowed now in the latest jdk release...
    My friend sent a request about that feature a few months ago.

    As far as i know, you cannot just do that. You have to loop over their elements and do the casting.

    here is an example,

    Java Code:
    public class test{
    	public static void main(String args[]){
    		Object[] t = {"I","am","who","am"};
    		String[] s = new String[t.length];
    		int x=0;
    		for(Object temp:t){
    			s[x] = (String)temp;x++;
    		}
    		for(String temp:s){
    			System.out.println(temp);
    		}
    	}
    }
    freedom exists in the world of ideas

  3. #3
    John_28 is offline Member
    Join Date
    May 2008
    Posts
    8
    Rep Power
    0

    Default

    HI sukatoa,
    I tried in ur way but following error occured

    The java class could not be loaded. java.lang.UnsupportedClassVersionError: (Unsupported major.minor version 49.0)

  4. #4
    sukatoa's Avatar
    sukatoa is offline Senior Member
    Join Date
    Jan 2008
    Location
    Cebu City, Philippines
    Posts
    556
    Rep Power
    10

    Default

    Here is another example, using List

    Java Code:
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collection;
    
    public class test{
    
    	static ArrayList<Object> a = new ArrayList<Object>();
    	static ArrayList<String> al;
    
    	public static void main(String args[]){
    
    		Object[] t = {"I","am","a","Java","Programmer"};
    		a.addAll((Collection)Arrays.asList(t));
    		al = new ArrayList<String>((Collection)a);	
    
    		for(String castedInternally:al)
    			System.out.println(castedInternally);
    	}
    }
    freedom exists in the world of ideas

  5. #5
    sukatoa's Avatar
    sukatoa is offline Senior Member
    Join Date
    Jan 2008
    Location
    Cebu City, Philippines
    Posts
    556
    Rep Power
    10

    Default

    What jdk version did you use?
    freedom exists in the world of ideas

  6. #6
    John_28 is offline Member
    Join Date
    May 2008
    Posts
    8
    Rep Power
    0

    Default

    Am using jdk1.6.0_04.

  7. #7
    sukatoa's Avatar
    sukatoa is offline Senior Member
    Join Date
    Jan 2008
    Location
    Cebu City, Philippines
    Posts
    556
    Rep Power
    10

    Default

    Im using update 3....

    There should be a problem at your side....
    those are compilable and runnable code....

    But, my example has a different approach,
    all objects inside the Array of object is a String representation.

    How about that {abc,xyz}?

    Are abc and xyz are Strings too? or has a String representation?
    Last edited by sukatoa; 05-14-2008 at 01:56 PM.
    freedom exists in the world of ideas

Similar Threads

  1. Casting an int value into a char
    By kurtulas in forum New To Java
    Replies: 2
    Last Post: 02-16-2008, 09:03 PM
  2. Type Casting Help
    By rhm54 in forum New To Java
    Replies: 2
    Last Post: 02-07-2008, 01:06 PM
  3. 'Casting' couch !!!!
    By ajaygargnsit in forum Advanced Java
    Replies: 4
    Last Post: 01-04-2008, 05:54 PM
  4. 'Casting' couch !!
    By ajaygargnsit in forum New To Java
    Replies: 1
    Last Post: 12-22-2007, 02:05 PM
  5. Casting
    By leebee in forum New To Java
    Replies: 5
    Last Post: 08-10-2007, 12:24 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •