数组元素必须具有相同的数据类型?--不一定哦
请看以下代码:
再看运行结果:
上述代码可以顺利通过编译,并且输出一个“很奇怪”的结果,这是为神魔呢?
原因解释:
输出结果为返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂,
Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
所以2a139a55为arr数组内的哈希数。
因为从数据库读出数据后,存入到list集合上时,如果你没有指定要存入的数据的类型,系统会自动给你赋一个object类型,他是所有类的鼻祖,取出数据要进行转型,转化成自己想要的数据类型才能显示。