Java.util.Array

Exception in thread "main" java.lang.ClassCastException: Card
at java.util.Arrays.mergeSort(Arrays.java:1044)
at java.util.Arrays.sort(Arrays.java:997)
at CardPlayer.sortHand(CardPlayer.java:91)
at Game.main(Game.java:75)
i get this error message after I call a sort method using the java.util.Array
does anyone know why, or do u need more code?
thanks

The Card object needs to implement the Comparable interface if an array of them is to be sorted. The ClassCastException occurs when the sorting code attempts to assign a Card Object to a Comparable variable. The API documentation refers to this problem like this:
Throws:
ClassCastException - if the array contains elements that are not mutually comparable (for example, strings and integers).

Similar Messages

  • Java.util.Arrays.sort for Vector

    I used the java.util.Arrays.sort to sort an array based on the method below.
                  java.util.Arrays.sort(array, 0, total, new ComparatorX());
               repaint();
                class ComparatorX implements java.util.Comparator
              public int compare( Object p1, Object p2){
                   int x1=((Point)p1).x;
                   int x2=((Point)p2).x;
                   if(x1>x2)
                                return 1;
                   if(x1>x2)
                                return -1;
                   return 0;
         }I've since changed the array to a vector. Is there anyway I can keep the comparator. Or how can I sort the vector based on the above method.

    BTW: Don't know if it's just a typing mistake, but your code contains an error:
    class ComparatorX implements java.util.Comparator     {
       public int compare( Object p1, Object p2) {
          int x1=((Point)p1).x;
          int x2=((Point)p2).x;
          if (x1>x2) {
             return 1;
          if (x1>x2) {  // Should be: if (x2 > x1) ...
             return -1;
          return 0;

  • How to set property "java.util.Arrays.useLegacyMergeSort" in jnlp-file?

    Hi,
    I have a problem in a web start application with java 7 and the new sort behavior (exception: comparison method violates its general contract).
    So I like to go back to previous behavior and tried to put the new java 7 system property "java.util.Arrays.useLegacyMergeSort" in the generated jnlp-File:
    <property name="java.util.Arrays.useLegacyMergeSort" value="true"/>.
    Now I can read the property value in java code with System.getProperty("java.util.Arrays.useLegacyMergeSort"), and guess the property was successful set, but the exception still appears?!
    The system property works with command line "javaws -J-Djava.util.Arrays.useLegacyMergeSort=true file.jnlp", but not via doubleclick on the jnlp-file or url and browser.
    Any ideas?
    Cheers,
    Dan

    Only "trusted" set of properties can be set in the JNLP file by unsigned applications.
    List of properties is revised from time to time but it usually takes time for new properties to be added to it (if there is strong demand for it as every property should undergo security audit).
    You can specify arbitrary property if you sign your application and JNLP file.

  • Using java.util.Arrays.binarySearch

    Hi,
    I tried the following code
    import java.util.Arrays ;
    class SecondTry {   
    public static void main(java.lang.String args[]) {
    int xyz[] = new int[10];
    xyz[0] = 5;
    xyz[1] = 6;
    xyz[2] = 1;
    Arrays.sort(xyz);
    System.out.println(Arrays.binarySearch(xyz,5));
    i expected to see a result of 1. But i get a 8.
    I am sure i must be doing something wrong. But not able to figure out what exactly is wrong. Could somebody help?
    TIA,
    Babu

    hi there,
    .The output was 8 because u have declared the array size to be 10,so the values which are not assigned would be assigned to zero,so if you change the array size to 3,u would get the desired output :)
    cheers
    class SecondTry {
    public static void main(java.lang.String args[]) {
    int xyz[] = new int[3]; //change to three
    xyz[0] = 5;
    xyz[1] = 6;
    xyz[2] = 1;
    Arrays.sort(xyz);
    System.out.println(Arrays.binarySearch(xyz,5));

  • Trouble extending java.util.Arrays

    I have written some utility functions for dealing with arrays and I would like to bundle them into a class along with java's built-in array functions (java.util.Arrays). To do this, I tried to extends the class java.util.Arrays like this:
    public class ArrayUtils extends java.util.Arrays
    /* some static methods */
    When I try to compile this with javac (even with no class body between the braces), I get an error "error:Cannot find constructor "Arrays" with matching parameters [JLS 15.12]". Does anyone know what's going on here? Why is the compiler looking for a constructor? And why can't it find one? I would very much appreciate your insight. Thanks. Eli

    Does anyone know what's
    going on here? Why is the compiler looking for a
    constructor? And why can't it find one?Conceputually....
    Inheritance exists to allow one to inherit from an object. In java objects can be created by using a class. However classes in java do not have to be objects. And you are trying to inherit from something that is not an object.
    One of the other uses for class in java is to group a number of convienent functions together. (Grouped functions do NOT represent a class.) That is what java.util.Arrays is.
    Technically....
    The class java.util.Arrays has a private constructor which means you can't derive anything from it.

  • Private static ArrayList within java.util.Arrays

    I was recently reviewing the code in java.util.Arrays (class version 1.45 - Java version 1.4.1). Beginning on line 2289 is a private static class named ArrayList. I'm completely baffled as to why the author created this slimmed-down private class (which would be, incidentally, returned by the Arrays.asList(Object[] a) method) rather than use the public class java.util.ArrayList. Can anyone offer an explanation?
    Thanks,
    John

    from JDK JAVADoc:
    asList
    public static List asList(Object[] a)
    Returns a fixed-size list backed by the specified array. (Changes to the returned list "write through" to the array.) This method acts as bridge between array-based and collection-based APIs, in combination with Collection.toArray. The returned list is serializable.
    So the private ArrayList extends java.util.ArrayList, and any changes made this list does not affect the internal Object[].... in other words can not be changed.

  • AsList(java.lang.Object[]) in java.util.Arrays cannot be applied to (int[])

    hi all,
    i'm getting the above error msg when trying to compile a simple array prog...
    while at it, is there another simple way to print the contents
    of an array to the console in a single statement except using the asList method??? .. like :
    int[] myArray = {1,2,3,4};
    System.out.println(myArray);
    ==================================
    here's the code for my program :-
    tks in advance.
    import java.util.*;
    public class ListArray {
    public static void main(String args[]) {
         int[] anArray = {2,7,5,8,3};
         for (int i = 0; i < anArray.length; i++) {
         System.out.println("Element No : " + (i+1) + " = " + anArray);
         System.out.println("All the Elements : " + Arrays.asList(anArray));

    Funnily enough, thats because int[] is not an array of Objects.
    You can make your listing method work by writing this instead:
    for (int index = 0; index < anArray.length; index++) {
      System.out.println("Element No: " + (index + 1) + " = " + anArray[index]);
    }

  • Java.util.Arrays; (method sort( ) )

    1) How to change a direction of sorting (on increase / on decrease)?
    2) Whether exists in java 2 something similar for sorting Strings ?

    1) How to change a direction of sorting (on increase
    / on decrease)?[url http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collections.html#reverseOrder()]http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collections.html#reverseOrder()
    2) Whether exists in java 2 something similar for
    sorting Strings ?Arrays.sort and Collections.sort will both sort the array or list as long as the type implements Comparable (or you supply a separate Comparator). Since String implements Comparable, those sort methods will sort the array or list of strings.
    Making Java Objects Comparable
    http://java.sun.com/docs/books/tutorial/collections/interfaces/order.html
    http://www.javaworld.com/javaworld/jw-12-2002/jw-1227-sort.html

  • Error: java.lang.ClassCastException: java.util.Arrays$ArrayList

    Hi,
    How to solve this error?
    I get the error at this line of code in my program.
    java.util.ArrayList list= (java.util.ArrayList)obj;
    Please help how to solve this problem.
    Thanks,
    cmbl

    cmbl wrote:
    How to solve this error?
    I get the error at this line of code in my program.
    java.util.ArrayList list= (java.util.ArrayList)obj; Don't do this cast.
    Why are you doing this cast anyway? I think you need to show a small bit of compilable code (or almost compilable except perhaps for this error) and some more explanation.

  • What is the proper and best way to destroy a java.util.List or Array for GC

    Hi,
    If I have a java.util.List of objects lets say:
    List<File> files = new ArrayList();The List contains 1000 file objects. When my class finishes, is it enough to do
    files = null;to make GC able to release it from memory?
    Cause it seems like I can't do the following:
    for(int i = 0; i < extracted_files.size(); i++){
                extracted_files.get(i) = null;
    }Or should I use this one:
    files.clear()What is the proper and best way to do this in order to avoid memory leaks? How about normal Arrays like File[]?
    Edited by: TolvanTolvanTolvan on 2009-sep-10 16:58

    TolvanTolvanTolvan wrote:
    Thanks for the info!
    But what if the List is a class variable running in a Web Service for like months without terminating?You mean if the List variable is a member variable of a long-lived object? Then presumably the list needs to live as long as the object does. In the unlikely scenario that the object needs to live on but its list member variable does not, then yes, setting the member to null will be needed to make the list eligible for GC. But I highly doubt this is your situation, and if it is, you probably have a design flaw.
    And if the list is referenced only by a local variable, then, as I already said, when the method ends, the variable goes out of scope, and the List is eligible for GC.
    Now, a slightly different situation is when the List needs to live a long time, and at some point during its life, you're done using some object that it refers to. In that situation, simply remove the element from the list (or set the element to null if it's an array rather than a list), and then if it's not referenced anywhere else, it can be GCed.
    How about Arrays like File[]? Do I need to iterate through the array and null all the objects or is it enough to just null the Array?YOU. DON'T. NEED. TO. HELP. GC. You don't need to set the elements to null, and you most likely don't even need to set the array variable to null.
    Also note that only references can be null, not objects.

  • Using List Class in java.awt / java.util ?

    have a program that:
    import java.util.*;
    List list = new LinkedList();
    list = new ArrayList();
    ... read a file and add elements to array
    use a static setter
    StaticGettersSetters.setArray(list);
    next program:
    import java.awt.*;
    public static java.util.List queryArray =
    StaticGettersSetters.getArray();
    If I don't define queryArray with the package and class, the compiler
    gives an error that the List class in java.awt is invalid for queryArray.
    If I import the util package, import java.util.*; , the compiler
    gives an error that the list class is ambiguous.
    Question:
    If you using a class that exists in multiple packages, is the above declaration of queryArray the only way to declare it ?
    Just curious...
    Thanks for your help,
    YAM-SSM

    So what you have to do is explicitly tell the compiler which one you really want by spelling out the fully-resolved class name:
    import java.awt.*;
    import java.sql.*;
    import java.util.*;
    public class ClashTest
        public static void main(String [] args)
            java.util.Date today    = new java.util.Date();
            java.util.List argsList = Arrays.asList(args);
            System.out.println(today);
            System.out.println(argsList);
    }No problems here. - MOD

  • Is there a Java utility class to help with data management in a desktop UI?

    Is there a Java utility class to help with data management in a desktop UI?
    I am writing a UI to configure a network device that will be connected to the serial port of the computer while it is being configured. There is no web server or database for my application. The UI has a large number of fields (50+) spread across 16 tabs. I will write the UI in Java FX. It should run inside the browser when launched, and issue commands to the network device through the serial port. A UI has several input fields spread across tabs and one single Submit button. If a field is edited, and the submit button clicked, it issues a command and sends the new datum to the device, retrieves current value and any errors. so if input field has bad data, it is indicated for example, the field has a red border.
    Is there a standard design pattern or Java utility class to accomplish the frequently encountered, 'generic' parts of this scenario? lazy loading, submitting only what fields changed, displaying what fields have errors etc. (I dont want to reinvent the wheel if it is already there). Otherwise I can write such a class and share it back here if it is useful.
    someone recommended JGoodies Bindings for Swing - will this work well and in FX?

    Many thanks for the reply.
    In the servlet create an Arraylist and in th efor
    loop put the insances of the csqabean in this
    ArrayList. Exit the for loop and then add the
    ArrayList as an attribute to the session.I am making the use of Vector and did the same thing as u mentioned.I am using scriplets...
    >
    In the jsp retrieve the array list from the session
    and in a for loop step through the ArrayList
    retrieving each CourseSectionQABean and displaying.
    You can do this in a scriptlet but should also check
    out the jstl tags.I am able to remove this problem.Thanks again for the suggestion.
    AS

  • Java.util.zip.ZipException: a device attached to the system is not function

    getting a java.util.zip.zipexception : a device attached to the system is not functioning error - what could cause such an error?
    My program finds all zip files in an archive and then searches through them for xls files, which it extracts and re-locates.
    I havent even a clue where to look for the cause of this exception but Ill attach at the bottom the code in the general vicitiny of the trigger so that you can get kind of an idea what Im trying to do, and if im lucky, even spot my problem. :) Thanks!!
    //zips is an array of zip files
    int found = 0;
    File[] haveXLs = new File[zips.length];
    for (int i = 0; i < zips.length; i++){
    String fileName = new String("L:/Vision/Archive/" + zips.getName());
    ZipFile archive = new ZipFile(fileName);
    String name = zips[i].getName().substring(0,8);
    for(Enumeration e = archive.entries(); e.hasMoreElements();){
    ZipEntry entry = (ZipEntry) e.nextElement();
    if(entry.getName().substring(0,8) == name){
    haveXLs[found] = zips[i];
    found++;

    Hey there a few things.
    Make sure that you dont use fileseparators like you do. ("/")
    Use the separator generated for your system.
    Something like:
    String sep = System.getProperty("file.separator");
    You mentioned it work local, but not network.
    Either you have plenty of harddrives or L: is a mapped drive.
    Is it working at the mapped drive?
    When you say on the network, how are you accessing the files?
    Could it be possible for another user to lock a file, so you wont have access to it over the network?
    BR.
    MagDy

  • Error on java.util.NoSuchElementException

    Hi,
    I am facing an error "Exception in thread "main" java.util.NoSuchElementException" on my java code but i have no idea on how to solve this error. I have been figuring for very long but still no solution. Below is my code. Can anyone help? Thank in advance=D
    import java.io.FileReader;
    import java.io.BufferedReader;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.util.*;
    class Matrix {
          double[][] element;
         public static void getFile(String fileName) throws IOException{
            BufferedReader br = null;
            int numRows,numCols;
            Matrix m1 = new Matrix();
            try{
                  br = new BufferedReader(new FileReader(fileName));
                  String line = br.readLine();
                  //Get the number of rows
                  line = br.readLine();
                  StringTokenizer st = new StringTokenizer(line, "=");
                  st.nextToken();
                  String row = st.nextToken();
                  numRows = Integer.parseInt(row.substring(1));
                  //Get the number of columns
                  line = br.readLine();
                  StringTokenizer st2 = new StringTokenizer(line, "=");
                  st2.nextToken();
                  String col = st2.nextToken();
                  numCols = Integer.parseInt(col.substring(1));
                  line = br.readLine();
                  while ((line = br.readLine()) != null ){
                     //Declare and initialize the 2d array
                     m1.element = new double[numRows][numCols];
                     StringTokenizer st3 = new StringTokenizer(line, "</matrix>");
                     while(st3.hasMoreTokens()){
                          for(int r = 0; r < m1.element.length; r++){
                              for(int c = 0; c <= m1.element.length; c++){
                                 String record = st3.nextToken(" ");
                                 m1.element [r][c] = Double.parseDouble(record);
                      br.close();      
               }catch(FileNotFoundException ex){
                      System.out.println(ex.getMessage());
    }

    Tave wrote:
    Some things occur to me, none of which may be useful.
    Firstly, you have no constructor for your class.
    Secondly, you don't seem to have a main method, though this may be because this class is called by another.
    Thirdly, don't you have a line number or other identification for what is causing the exception?Thank for your reply=D
    Yap this is a class that is called by another class that why there is no main method for it. And for the line that causing the error is
    String record = st3.nextToken(" ");

  • What cause this error: java.util.zip.ZipException: invalid literal/lengths?

    Hi all,
    Our application produces this error in the logs: (our JDEV is 11.1.1.4.0, WLS 10.3)
    org.apache.myfaces.trinidadinternal.renderkit.core.CoreResponseStateManager _restoreSerializedView
    SEVERE:
    java.util.zip.ZipException: invalid literal/lengths set
    at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:147)
    at java.util.zip.GZIPInputStream.read(GZIPInputStream.java:92)
    at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2266)
    at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2279)
    at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2750)
    at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:780)
    at java.io.ObjectInputStream.<init>(ObjectInputStream.java:280)
    I have googled this error for hours and search the forum here, but no luck. Can someone please shed some light on this error? Thanks in advance!
    Shawn

    Hi Shawn,
    Please refer the below thing i found. Hope this may help you in moving forward in resolving. I hope this issue has occured when you are deploying your application WAR.
    ======================================================================================
    Method: read()
    Class: at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:147)
    The above class comes in your exception hierarchy above.
    Reads uncompressed data into an array of bytes. This method will block until some input can be decompressed.
    Throws:
    ZipException - if a ZIP format error has occurred
    ====================================
    This also points that your WAR file is corrupt.
    Class: GZIPInputStream
    IOException - if an I/O error has occurred or the compressed input data is corrupt
    Thanks,

Maybe you are looking for

  • Cost estimate wrong after adding accounting/costing view

    material 3000232 previously does not have accounting and costing view, now we maintained them, after running ck11n, it shows below error: no itemization exists for material, message number ck219, by drill down, the costing log is saying bom not exist

  • ODI Package + Calling via Unix wrapper

    Hi, I am new to ODI... Can you please help me on this. On Overall architecture we are 3 products 1. ODI for staging to target transformaton 2. AbInitio conduct>IT for dependency analyisis and as work flow ( It can call Unix scripts, programs, SQL etc

  • Plz help, "device not detected" after windows updates?? I have so

    I have An Audigy 2 ZS, and have the latest drivers. It has been working PERFECT, LAST NIGHT I had like 0 WINDOWS UPDATES, i dont' know if any of these had anything to do with this. But, I just now went to the icon in the task bar, and went to change

  • Limitations when using jsvc daemon?

    I found out about and started using JMC yesterday and am using it to gain insights into a Java program that runs via the jsvc daemon on Linux (Ubuntu and RHEL). Most everything in JMC is working, except 1) the MBeans browser, which is completely empt

  • Getting video from DVR into computer

    What's the shortest route into FCP from a tivo or DVR recorded program? Thanks, TD