import java.util.Arrays;

public class Array {

public static void main(String[] args){
  
  Array test=new Array();
  test.test1();
  test.test2();
  test.test3();
  test.test4();
  }
 
 //test1 
 public void test1(){
  System.out.println("*****************************");
  System.out.println("test1_initial");
  System.out.println("*****************************");
  
  //array1
  int[] array1;  
  array1=new int[5];  
  int length=array1.length;
  for(int i=0;i<length;i++){
   System.out.println("int[] "+array1[i]);
  }
  //array2
  float array2[]=new float[5];
  for(int i=0;i<array2.length;i++){
   System.out.println("float[] "+array1[i]);
  }
  //array3
  boolean array3[]={true,false,false,false,false};
  for(boolean element:array3){
   System.out.println("boolean[] "+element);
  }
  //array4    数组长度不可变,长度可以为0
  double array4[]=new double[0];  
 }
 
 //test2
 public void test2(){
  System.out.println("*****************************");
  System.out.println("test2_copy");
  System.out.println("*****************************");
  
  //array5
  short[] array5={1111,2222,3333,4444,5555};
  for(short element:array5){
   System.out.println("array5[] "+element);
  }
  
  //array6和array5指向同一数组
  short array6[]=array5;
  array6[0]=6666;
  System.out.println("array5[0] & array6[0] is "
       +array5[0]+"&"+array6[0]);
  
  //array7, 类Arrays包含对数组
  //进行操作的一些列方法(如搜索、排序)
  short[] array7=Arrays.copyOf(array5,array5.length-1);
  for(short element:array7){
   System.out.println("array7[] "+element);
  }  
  array7[0]=0;
  System.out.println("array5[0] & array7[0] is "
    +array5[0]+"&"+array7[0]);
 }
 
 //test3
 public void test3(){
  System.out.println("*****************************");
  System.out.println("test2_search & sort");
  System.out.println("*****************************");
  //array8,sort()  
  long[] array8={100000,100005,100008,100006,100001,
      100003,100010,100011,100020,100099};
  Arrays.sort(array8);
  System.out.println("aftter sorting array[8] "+
       Arrays.toString(array8));
  
  //array9, binarySearch()
  byte[] array9={1,2,25,54,89,123,68,23,45,98,100};
  Arrays.sort(array9);//
  int searchIndex=Arrays.binarySearch(array9,(byte)23);
  System.out.println("searchIndex array9 "+searchIndex);
 }
 
 //test4
 public void test4(){
  System.out.println("*****************************");
  System.out.println("test4_multidimensional_array");
  System.out.println("*****************************");
  //array10,initial  
  int[][] array10={
    {12,23,54,66},
    {456,8798,1245,7855,456},
    {77,89,653,123,1111,2222},
    {852,963,741,753,7777,8888,99999}
    };
  System.out.println("行数 array10.length is "+array10.length);
  for(int i=0;i<array10.length;i++){
   System.out.println("line "+i+" has "
        +array10[i].length+" column");
  }
  
 }
   
}

JAVA —— 数组的更多相关文章

  1. Java 数组

    数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java语言中提供的数组是用来存储固定大小的同类型元素. 你可以声明一个数组变量,如numbers[100 ...

  2. 第5章 Java数组

    1.什么是数组 数组可以想象成一个巨大的盒子,这个盒子里面存放的是同一个数据类型的数据 例如:int[] scores = {78,68,94,93}; 2.如何使用Java中的数组 2.1申明数组 ...

  3. Java 数组基础

    数组 数组(Array):相同类型数据的集合. 定义数组 方式1(推荐,更能表明数组类型) type[] 变量名 = new type[数组中元素的个数]; 比如: int[] a = new int ...

  4. Java数组及其内存分配

    几乎所有的程序设计语言都支持数组.Java也不例外.当我们需要多个类型相同的变量的时候,就考虑定义一个数组.在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静 ...

  5. [转载]Java数组扩容算法及Java对它的应用

    原文链接:http://www.cnblogs.com/gw811/archive/2012/10/07/2714252.html Java数组扩容的原理 1)Java数组对象的大小是固定不变的,数组 ...

  6. Java数组技巧攻略

      Java数组技巧攻略 0.  声明一个数组(Declare an array) String[] aArray = new String[5]; String[] bArray = {" ...

  7. Java数组扩容算法及Java对它的应用

    1)Java数组对象的大小是固定不变的,数组对象是不可扩容的.利用数组复制方法可以变通的实现数组扩容.System.arraycopy()可以复制数组.Arrays.copyOf()可以简便的创建数组 ...

  8. Java数组与vector互转

    Java数组与vector互转 /* Object[] object1 = null ; //数组定义 Vector<Object> object2;//Vector定义 object2 ...

  9. 比较Java数组,ArrayList,LinkedList,Vector 性能比较

    public class PerformanceTester { public static final int TIMES=100000; public static abstract class ...

  10. Java数组的12个常用方法

    以下是12个关于Java数组最常用的方法,它们是stackoverflow得票最高的问题. 声明一个数组 String[] aArray = new String[5]; String[] bArra ...

随机推荐

  1. 用JavaScript实现网页动态水印

    1.基本原理 页面加载后,通过javascript创建页面元素div,并在div元素中创建文本节点,展示水印内容 设置div元素样式,将其zIndex设置一个较高的值,并设置透明度,实现浮在页面的水印 ...

  2. C#的c/s做出开灯关灯计算?

    static void light(Boolean[] lights,int n) {     if (n <= 1 || lights.Length<5) return;     for ...

  3. Android Tombstone/Crash的log分析和定位

    有一句话叫做常在河边走,哪有不湿鞋.我们这些研究和开发Android的project师正应了这句话,相必大家在调试的时候常常会遇到这么个东西吧 *** *** *** *** *** *** *** ...

  4. MVC 检测用户是否登录

         当我们访问一个网站的需求检測用户是否已经登录(通过Session是否为null),我们知道在WebForm中能够定义一个BasePage类让他继承System.Web.UI.Page,重写它 ...

  5. windows下一个erlang包装镜像启动

    于linux环境,erlang经systools:make_script("",[])和systools:make_tar()命令生成图像包,安装镜像包,图片包的安装过程,通过替换 ...

  6. 从头开始编写项目Makefile(八):型号规则

    [版权声明:转载请保留源:blog.csdn.net/gentleliu.Mail:shallnew at 163 dot com]     上创建的文件夹谈及.没有生产目标文件到相应的文件夹,在这里 ...

  7. NET WEB

    .NET WEB程序员需要掌握的技能 2015-12-28 08:50 by 敏捷的水, 3997 阅读, 66 评论, 收藏, 编辑 本来这个是我给我们公司入职的新人做一个参考,由于 @张善友 老师 ...

  8. C#的WebBrowser控制浏览

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  9. 为应用程序池 'DefaultAppPool' 提供服务的进程关闭时间超过了限制

    服务器经常产生“应用程序池 'DefaultAppPool' 提供服务的进程关闭时间超过了限制.进程 ID 是 '2068'.”的错误,导致iis处于假死状态,经了解是IIS应用程序池的设置问题.解决 ...

  10. SQL_substr功能测试

    原创作品.从 "深蓝blog" 博客,欢迎转载,请务必注明转载的来源.权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong/articl ...