Getting error on printing array

后端 未结 4 634
孤独总比滥情好
孤独总比滥情好 2021-01-28 12:22

I got this code:

import java.util.*;
import java.io.*;

public class Oblig3A{
    public static void main(String[]args){
    OrdAnalyse O = new OrdAnalyse();
            


        
4条回答
  •  忘掉有多难
    2021-01-28 13:14

    Actually this is commonly considered to be a "mistake" of arrays in Java: arrays don't override toString(), sadly. What you see is Object's toString():

    Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

    The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

    getClass().getName() + '@' + Integer.toHexString(hashCode())
    

    A common workaround is to use Arrays.toString():

    System.out.println(Arrays.toString(oldArray));
    

提交回复
热议问题