第十一章 Arrays.toString( ... )产生数组的可打印表示

打印容器无需任何帮助,直接打印容器对象即可获得容器内可视数据,但是对于数组,直接打印数组对象,最终是调用toString方法,打印出的只是:

     * @return  a string representation of the object.
     */
    public String toString() {
        return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }

类名@HashCode。

package 持有对象.迭代器;

import java.util.Arrays;

public class Test {

    public static void main(String[] args) {

        int[] i = {1,2,3};
        String[][] s = {{"1","2"},{"2"}};

        System.out.println(i);
        System.out.println(s);

    }

}

输出结果:

[[email protected]
[[Ljava.lang.String;@4e25154f

其中【代表数组的维度, L 代表其为引用类型的数组,引用类型的数组有自己class的名称。I 代表其为基本类型的数组,基本类型的数组会带有其自己的标识,如int类型的标识为I,double类型的为D。

可以通过Arrays.toString( ... )方法打印出数组的可视数据

package 持有对象.迭代器;

import java.util.Arrays;

public class Test {

    public static void main(String[] args) {

        int[] i = {1,2,3};
        String[][] s = {{"1","2"},{"2"}};

        System.out.println(i);
        System.out.println(s);

        System.out.println(Arrays.toString(i));
        System.out.println(Arrays.toString(s));
        System.out.println(Arrays.toString(s[0]));
    }

}

输出结果:

[[email protected]
[[Ljava.lang.String;@4e25154f
[1, 2, 3]
[[Ljava.lang.String;@70dea4e, [Ljava.lang.String;@5c647e05]
[1, 2]

原文地址:https://www.cnblogs.com/liudaihuablogs/p/9213488.html

时间: 2024-11-09 16:13:57

第十一章 Arrays.toString( ... )产生数组的可打印表示的相关文章

“全栈2019”Java第三十一章:二维数组和多维数组详解

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第三十一章:二维数组和多维数组详解 下一章 "全栈2019"Java第三十二章:增强for循环Foreach语法 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Ja

重新认识java(十一)---- java中的数组

面向对象的一些知识暂时告一段落,从本文开始,进入java语法的重学阶段~ 初识数组 什么是数组 数组:相同类型的.用一个标识符名称封装到一起的一个对象序列或基本类型数据序列. 数组的定义及初始化 定义及动态初始化 方式一,java推荐用法: type [] 变量名 = new type[数组中元素的个数]; //举例 int[] a = new int[10]; for (int i = 0; i < a.length; i++){ a[i] = new Random().nextInt();

C和指针 (pointers on C)——第十一章:动态内存分配(上)

第十一章 动态内存分配 数组在声明的时候,本身作为一个指针常量,它在编译时候内存就已经被分配好了.但是有时候程序不知道这个数组到底有多长,所以,为了防止内存的浪费,C提供了动态内存分配的策略. 其实,作为独立的一章,本章显得内容不多.malloc,free,calloc,realloc就没有了,但是它包含很多用法,也有很多陷阱. 总结: malloc和calloc函数都用于动态分配一块内存,并返回一个指向该块内存的指针.malloc返回的是一个 void *的指针. malloc的参数就是需要分

Arrays.toString(a)---&gt;将数组a的值转换为字符串

Arrays.toString(数组)是java内置类Arrays类的一个方法,具体查Api可知.因为数组是不可直接输出的,它的作用是将数组转换为字符串.其实用for循环也是可以做到的,只不过比for循环省事. Arrays.toString(数组),输出数组成员 public class Demo { static String[] a={"Tom","jack"}; public static void main(String[] args) { System.

Getting started with Processing 第十一章——数组

Getting started with Processing 第十一章--数组 从变量到数组: 使用数组,无需为每一个变量创建一个新的名称/这让代码变得更短,更容易理解,更方便更新. 创建数组的三个步骤 创建一个数组,需要经过三个步骤: 声明数组,定义数据类型.这里的数据类型可以是任何类型:可是是 int, float, boolean, PImage, 你自己定义的 class. 利用关键字 new 创建数组,并且定义数组的长度 给每个元素赋值. 每个步骤可以分开写一行,也可以压缩到一行.

JavaSE8基础 Arrays.toString 将一维int数组转成字符串输出

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0)        code: package jizuiku2; import java.util.Arrays; public class Demo100 { public static void main(String[] args) { String str = Arrays.toString(new int[] { 1, 2,

第十一章 异常,日志,断言和调试

第十一章 异常,日志,断言,调试 由于程序的错误或一些外部环境的影响造成用户数据的丢失,用户就有可能不再使用这个程序了.为了避免,应该做到以下几点: 向用户通告错误 保存所有的操作结果 允许用户以适当的形式退出程序. 11.1 处理异常 当由于出现错误而使得某些操作没有完成,程序应该: 返回到一种安全状态,并能够让用户执行一些其他命令:或者 允许用户保存所有操作的结果,以适当的方式终止程序 异常处理的任务就是将控制权从错误产生的地方转移给能够处理这种错误的处理器.程序中可能出现的错误和问题: 用

Java编程思想(第十一章持有对象)

1. 第11章 持有对象 java通过使用容器类来储存对象,与普通数组不同的是,普通数组的长度不可变. 1.1. 泛型与类型安全的容器 使用预定义的泛型,它指定了这个容器实例可以保存的类型,通过使用泛型,就可以在编译器防止将错误类型的对象放置到容器中. public class gerbil { private int gerbilNumber; public gerbil(int gerbilNumber){ this.gerbilNumber = gerbilNumber; } public

第十一章 执行查询算法

第十一章      执行查询算法 基本概念: 三类查找方法:线性查找.树形查找.哈希表查找 动态查找表:在查找的同时,对表做修改操作(如插入和删除),则相应的表称为动态查找表 静态查找表:与动态查找表相反 查找过程中对关键字需要执行的平均比较次数(也称平均比较长度作为衡量一个查找算法优劣的标准 平均比较长度: 其中:n是结点的个数:pi是查找第i个结点的概率.若不特别申明,认为每个结点的查找概率相等,都为1/n:ci是找到第i个结点所需进行的比较次数. 线性查找: 基本思想:从表的一端开始,顺序