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
    7

    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
    7

    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
    7

    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
    7

    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 02: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, 01: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
  •