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. mysql如何更新一个表中的某个字段值等于另一个表的某个字段值

    表A和表B,现在希望更新A表,当 A.bid = B.id时,a.x = b.x, a.y=b.y,请问mysql中sql语句 update a inner join b on a.bid=b.id ...

  2. Why 使用TLS记录封装IP层VPN IS A Bad Idea

    一个很自然的想法,使用TLS套餐一IP数据报实现第三层VPN.这种想法必须经过深思熟虑的,但不幸的是,.这是一个错误的想法.有文章<Why TCP Over TCP Is A Bad Idea& ...

  3. mongodb实现简单的增删改查

    package mongoDB; import java.net.UnknownHostException; import java.util.ArrayList; import java.util. ...

  4. UVa 11408 - Count DePrimes

    题目:一个数的素因子的和假设也是素数就叫做DePrimes,统计给定区间内的DePrimes. 分析:数论.本题使用用一种素数的筛法,欧拉筛法,也加线性筛法. 这样的方法,每次删选分两种情况:1.素因 ...

  5. [置顶] ffmpg简介以及用它实现音频视频合并(java)

    1.简介     FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影.转档.流功能. 2.下载     源代码 git://git.libav.org/libav.git     Windo ...

  6. 【原创】leetCodeOj --- Candy 解题报告

    题目地址: https://leetcode.com/problems/candy/ 题目内容: Candy Total Accepted: 43150 Total Submissions: 2038 ...

  7. log(n)在第一时间,以确定该阵列i小号码

    简介参考算法9.2 int partition(int *a,int p,int r){ int x=a[r]; int i=p-1; for(int j=p;j<=r-1;j++){ if(a ...

  8. 【DP|多重背包可行性】POJ-1014 Dividing

    Dividing Time Limit: 1000MS Memory Limit: 10000K Description Marsha and Bill own a collection of mar ...

  9. 匿名方法,Lambda表达式,高阶函数

    原文:匿名方法,Lambda表达式,高阶函数 匿名方法 c#2.0引入匿名方法,不必创建单独的方法,因此减少了所需的编码系统开销. 常用于将委托和匿名方法关联,例如1. 使用委托和方法关联: this ...

  10. 怎么将Emeditor设置成网页查看源代码的默认编译器

    1.打开emditor: 2.在菜单栏中找到工具---->自定义,打开自定义窗口: 3.快捷方式--->更多快捷方式 5.选中“在internet explorer中通过emeditor查 ...