A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© New灬狼 中级黑马   /  2015-12-29 20:59  /  791 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. /**

  2.         New灬狼
  3.         2015年12月17日18:29:38

  4. */

  5. /*
  6. 要求:学习数组

  7. 定义:
  8.         数组就是同一种数据的集合。数组就是容器。

  9. 好处:
  10.         可以自动给数组中的元素从0开始编号,方便操作这些元素。

  11. 格式1:
  12.         元素类型        [] 数组名 = new  元素类型 [元素个数或数组长度];

  13.         int [] x = new int [3];
  14.         就是定义一个int类型x的数组,数组里有3个int元素。

  15. 格式2:
  16.         元素类型 [] 数组名 = new 元素类型 [] {元素1,元素2,元素3,...};

  17.         int [] y = new int [] {2,5,6};
  18.         int [] y = {2,5,6};
  19.         就是定义了一个int类型的y的数组,数组的里的元素分别为2,5,6.

  20. 关于内存:
  21.         1,栈内存:用于存储局部变量【如for循环里的变量】,当数据使用完,所占空间会自动释放。
  22.         2,堆内存:
  23.                         1,数组和对象,通过new建立的实例都存放在堆内存中;
  24.                         2,每一个实体都有内存地址值;
  25.                         3,实体中的变量都有默认的初始化值;
  26.                         4,实体不再被使用,会在不确定的时间内被垃圾回收器回收。

  27. */

  28. class ArrayDemo
  29. {
  30.         public static void main(String [] args)
  31.         {
  32.                 //建立int类型数组
  33.                 int [] arr = new int [3];
  34.                 System.out.println("数组元素个数: "+arr.length);
  35.                 System.out.println("数组引用地址: "+arr);
  36.                 printArray(arr);
  37.                 System.out.println("\t说明int类型的默认值是: 0 \n");

  38.                 //建立byte类型数组
  39.                 byte [] b = new byte [4];
  40.                 System.out.println("数组元素个数: "+b.length);
  41.                 System.out.println("数组引用地址: "+b);
  42.                 printArray(b);
  43.                 System.out.println("\t说明byte类型的默认值是: 0 \n");
  44.                
  45.                 //建立short类型数组
  46.                 short [] s = new short [5];
  47.                 System.out.println("数组元素个数: "+s.length);
  48.                 System.out.println("数组引用地址: "+s);
  49.                 printArray(s);
  50.                 System.out.println("\t说明short类型的默认值是: 0 \n");

  51.                 //建立float类型数组
  52.                 float [] f = new float [2];
  53.                 System.out.println("数组元素个数: "+f.length);
  54.                 System.out.println("数组引用地址: "+f);
  55.                 printArray(f);
  56.                 System.out.println("\t说明float类型的默认值是: 0.0 \n");

  57.                 //建立boolean类型数组
  58.                 boolean [] boo = new boolean [1];
  59.                 System.out.println("数组元素个数: "+boo.length);
  60.                 System.out.println("数组引用地址: "+boo);
  61.                 printArray(boo);
  62.                 System.out.println("\t说明boolean类型的默认值是: false \n");

  63.                 //建立char类型数组
  64.                 char [] ch = new char [2];
  65.                 System.out.println("数组元素个数: "+ch.length);
  66.                 System.out.println("数组引用地址: "+ch);
  67.                 printArray(ch);
  68.                 System.out.println("\t说明char类型的默认值是: a \n");

  69.                 //格式2
  70.                 int [] sy = {1,4,7,8,9,44,3434};
  71.                 System.out.println("数组元素个数: "+sy.length);
  72.                 System.out.println("数组引用地址: "+sy);
  73.                 printArray(sy);



  74.         }

  75.         //因为一个一个打印数组中的元素,比较麻烦,而且重复,定义遍历数组。

  76.         // int 类型
  77.         public static void printArray(int[] arr )
  78.         {
  79.                 System.out.print("数组中的元素是: { ");

  80.                 for (int x=0;x<arr.length ;x++ )
  81.                 {
  82.                         if(x!=arr.length-1)
  83.                         {
  84.                                 System.out.print("["+x+"]="+(arr [x])+" ,");
  85.                         }
  86.                         else
  87.                         {
  88.                                 System.out.println("["+x+"]="+(arr [x])+" }\n");
  89.                         }
  90.                 }
  91.         }

  92.         // byte 类型
  93.         public static void printArray(byte[] arr )
  94.         {
  95.                 System.out.print("数组中的元素是: { ");

  96.                 for (int x=0;x<arr.length ;x++ )
  97.                 {
  98.                         if(x!=arr.length-1)
  99.                         {
  100.                                 System.out.print("["+x+"]="+(arr [x])+" ,");
  101.                         }
  102.                         else
  103.                         {
  104.                                 System.out.println("["+x+"]="+(arr [x])+" }\n");
  105.                         }
  106.                 }
  107.         }

  108.         // short 类型
  109.         public static void printArray(short[] arr )
  110.         {
  111.                 System.out.print("数组中的元素是: { ");

  112.                 for (int x=0;x<arr.length ;x++ )
  113.                 {
  114.                         if(x!=arr.length-1)
  115.                         {
  116.                                 System.out.print("["+x+"]="+(arr [x])+" ,");
  117.                         }
  118.                         else
  119.                         {
  120.                                 System.out.println("["+x+"]="+(arr [x])+" }\n");
  121.                         }
  122.                 }
  123.         }

  124.         // float 类型
  125.         public static void printArray(float[] arr )
  126.         {
  127.                 System.out.print("数组中的元素是: { ");

  128.                 for (int x=0;x<arr.length ;x++ )
  129.                 {
  130.                         if(x!=arr.length-1)
  131.                         {
  132.                                 System.out.print("["+x+"]="+(arr [x])+" ,");
  133.                         }
  134.                         else
  135.                         {
  136.                                 System.out.println("["+x+"]="+(arr [x])+" }\n");
  137.                         }
  138.                 }
  139.         }

  140.         // boolean 类型
  141.         public static void printArray(boolean[] arr )
  142.         {
  143.                 System.out.print("数组中的元素是: { ");

  144.                 for (int x=0;x<arr.length ;x++ )
  145.                 {
  146.                         if(x!=arr.length-1)
  147.                         {
  148.                                 System.out.print("["+x+"]="+(arr [x])+" ,");
  149.                         }
  150.                         else
  151.                         {
  152.                                 System.out.println("["+x+"]="+(arr [x])+" }\n");
  153.                         }
  154.                 }
  155.         }

  156.         // char 类型
  157.         public static void printArray(char[] arr )
  158.         {
  159.                 System.out.print("数组中的元素是: { ");

  160.                 for (int x=0;x<arr.length ;x++ )
  161.                 {
  162.                         if(x!=arr.length-1)
  163.                         {
  164.                                 System.out.print("["+x+"]="+(arr [x])+" ,");
  165.                         }
  166.                         else
  167.                         {
  168.                                 System.out.println("["+x+"]="+(arr [x])+" }\n");
  169.                         }
  170.                 }
  171.         }

  172. }
复制代码


2 个回复

倒序浏览
挺详细的  不错不错
回复 使用道具 举报
给楼主纠正一下char 类型的数组默认初始化值是 \u0000,也就是一个空格
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马