20
2020
09

Java数组,

Java数组:Java 语言中提供的数组是用来存储固定大小的同类型元素,我们以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number0,number1,....,number99

声明数组的变量:想要使用数组首先必须声明一个数组的变量,才能在程序中使用数组   声明数组变量的语法: dataType[] arrayRefVar//首选方法或者dataType arrayRefVar[];  两个方法效果是一样的 

创建一个数组使用new操作符来创建数组:arrayRefvae=new dataType[arraysize];在此创建的数组中使用 dataType[arraySize] 创建了一个数组,并把新创建的数组的引用赋值给变量 arrayRefVar

数组变量的声明和创建数组可以用一条语句完成:dataType[ ]  arrayRefvar=new dataType[array

Size];还可以这种方法创建数组:dataType[ ]  arrayRefvar={value1,value2,value3,value4};

实例:blob.png首先定义数组大小,再定义数组,数组 myList,这里 myList 数组里有 11个 double 元素,它的下标从 0 到 10定义元素的长度,再计算元素的总和,如果i大于11的话将不会   结果总和为:11490.373

处理数组:组的元素类型和数组的大小都是确定的,所以当处理数组元素时候,我们通常使用基本循环或者 For-Each 循环            创建、初始化和操纵数组   ;

例:double[] myList = {1.9, 2.9, 3.4, 3.5};

// 打印所有数组元素

for (int i = 0; i < myList.length; i++){              System.out.println(myList[i] + " ");  

   }                                 结果为: 1.9 2.9 3.4 3.5    

// 计算所有元素的总和

     double total = 0;      

   for (int i = 0; i < myList.length; i++) {  //元素相加

        total += myList[i];    

 }

 System.out.println("Total is " + total);     结果为:11.7

// 查找最大元素      double max = myList[0];    

    for (int i = 1; i < myList.length; i++) {         if (myList[i] > max) max = myList[i];  

 }

     System.out.println("Max is " + max);  最大值为:3.5

}

}

For-each循环又称加强循环,它能在不使用下标的情况下遍历数组

语法格式:                                   public class Dome9 {

for(type element: array)              public static void main(String[] args) {

{                                                                double[ ] myLis = {1.9, 2.9, 3.4, 3.5};

      system.out.println(element);                //打印所有的数组元素

}                                                                        for (double element: myList) {   

                                                                            System.out.println(element);

                                                                         }}}

多维数组:可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组    String str[][] = new String[3][4];

多维数组的动态初始化:为每一维分配空间type[][] typeName = new type[typeLength1][typeLength2];ype 可以为基本数据类型和复合数据类型,arraylength1 和 arraylength2 必须为正整数,arraylength1 为行数,arraylength2 为列数,可以看成一个两行三列的数组

Java日期时间:java.util 包提供了 Date 类来封装当前的日期和时间。 Date 类提供两个构造函数来实例化 Date 对象   第一个构造函数使用当前日期和时间来初始化对象Date( )

第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数Date(long millisec)

date对象:java.util 包提供了 Date 类来封装当前的日期和时间。 Date 类提供两个构造函数来实例化 Date 对象  第一个构造函数使用当前日期和时间来初始化对象Date( )

第二个构造函数接收个参数,该参数是从1970年1月1日起的毫秒数Date(long millisec)

Date对象创建以后,可以调用这些方法:

boolean after(Date date)调用此方法的Date对象在指定日期之后返回true,否则返回false
boolean before(Date date)调用此方法的Date对象在指定日期之前返回true,否则返回false
Object clone( )返回此对象的副本
int compareTo(Date date)比较当调用此方法的Date对象和指定日期。两者相等时候返回0。调用对象在指定日期之前则返回负数。调用对象在指定日期之后则返回正数。
boolean equals(Object date)当调用此方法的Date对象和指定日期相等时候返回true,否则返回false
long getTime( )返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数
int compareTo(Object obj)若obj是Date类型则操作等同于compareTo(Date) 。否则它抛出ClassCastException异常
int hashCode( ) 返回此对象的哈希码值
void setTime(long time)用自1970年1月1日00:00:00 GMT以后time毫秒数设置时间和日期
String toString( )此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。


获取当前的日期时间:使用 Date 对象的 toString() 方法来打印当前日期和时间

blob.png  blob.png

日期比较:使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值     使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true     使用 compareTo() 方法


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。