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. 黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block 到目前为止,我们使用的模块都是在同一个配置 ...

  2. Codeforces Round#308

    A题,看样例就知道要求什么,   水过去 #include <stdio.h> #include <string.h> #include <stdlib.h> #i ...

  3. Zabbix的数据表结构

    看到Zabbix的数据表结构吧,就知道数据量大了 性能问题很让人担忧,不过基于Zabbix数据库导出报表,或自动跑报表的时候,就必须去了解一下zabbix的数据表结构了,得知道XX放在哪才能找到XX, ...

  4. OpenCV Haar AdaBoost源代码改进(比EMCV快6倍)

    这几天研究了OpenCV源代码 Haar AdaBoost算法,作了一下改进 1.去掉了全部动态分配内存的操作.对嵌入式系统有一定的速度提升 2.凝视覆盖了大量关键代码 3.降低了代码一半的体积,而且 ...

  5. JAVA网络编程Socket常见问题 【长连接专题】

    一. 网络程序运行过程中的常见异常及处理 第1个异常是 java.net.BindException:Address already in use: JVM_Bind. 该异常发生在服务器端进行new ...

  6. UDP议定书图像高速传输无损失程序

    下面的程序实现UDP没有图像数据的高速传输协议损耗,测试数据egtest01图片库,实现PC和图像的传输嵌入式结束.变速箱+读写速度可以达到10+M/S.考 server端程序 #include &l ...

  7. python进阶八_警告和异常

    心情有点纠结,怎么说呢,倒不是由于其它学习上的事情,反而是由于生活上狗血的剧情逼着人偏离,渐行渐远,人跟人之间有误会也是正常的,可能是由于交流不够,彼此不够了解吧,希望能尽快度过这一段纠结的日子,简单 ...

  8. Oracle在不同的语言环境结果to_date错误的问题

    我写了一个存储过程,它使用了功能,有一些功能to_date(dateFrom, 'yyyy/mm/dd').执行发现数据插入错误后,数据插入"0001/9/14". 感觉莫名其妙, ...

  9. redmine忘记username和password

    环境: Ubuntu 13.10 bitnami-redmine-2.5.1-1-linux-x64-installer.run 用bitnami安装完redmine以后,有是否忘记了username ...

  10. OTN&互换amp; P-OTN有效降低100G 网络成本 (两)

    OTN互换& P-OTN有效降低100G 网络成本 (两) 在全球范围内.网流量的增长速度是空前的,导致此现象的缘由包含云服务的增长.移动宽带和基于互联网的视频点播服务的增长. Cisco估计 ...