日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Java教程Java語言中的數(shù)組

本文是Java教程之Java數(shù)組部分。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供贊皇網(wǎng)站建設(shè)、贊皇做網(wǎng)站、贊皇網(wǎng)站設(shè)計、贊皇網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、贊皇企業(yè)網(wǎng)站模板建站服務(wù),10年贊皇做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

Java類之間常見的兩種關(guān)系,即關(guān)聯(lián)和依賴。如果A關(guān)聯(lián)或依賴B,如果僅從A到B這個方向看,從數(shù)量上,可能有1對1和1對多兩種可能。面向?qū)ο蟮膽?yīng)用,都是映射現(xiàn)實世界的對象以及對象之間的關(guān)系的,仔細考察一下我們身邊的情況,對象與對象之間如果存在關(guān)聯(lián)或依賴,其實1對多的關(guān)系更為常見。如,一個部門有多個員工,一個學(xué)員有多個院系,一個人有多張畢業(yè)證書……

比如這樣一個例子,學(xué)生只能選擇一門免費課程學(xué)習(xí),如果培訓(xùn)中心加大優(yōu)惠力度,每個學(xué)生最多可以選擇3門課程學(xué)習(xí),應(yīng)該如何維護這種關(guān)系哪?

我們可能這樣嘗試:

 
 
 
  1. package com.csst.relation;  
  2.  
  3. public class Student {  
  4.  
  5.        private String name;       
  6.  
  7.        //注意此處修改  
  8.  
  9.        private Course course1,course2,course3;  
  10.  
  11.          
  12.  
  13.        public Student(String name) {  
  14.  
  15.               super();  
  16.  
  17.               this.name = name;  
  18.  
  19.        }  
  20.  
  21. //TBD  
  22.  

但是,接下來,完善chooseCourse,getCourse方法,我們將面臨困難。如何得知目前已經(jīng)選擇了幾門課程?如何能一次性將學(xué)員已經(jīng)選擇的課程查詢出來?

也就是說,當(dāng)關(guān)聯(lián)或依賴關(guān)系中,出現(xiàn)了1對多的數(shù)量關(guān)系時,我們必須找一種特殊的對象來幫忙,這種對象能夠?qū)⑽覀冃枰芾淼膶ο蟀b起來,作為一種數(shù)據(jù)容器使用,讓我們能很容易的把一些對象裝進去,很容易的再取出來。數(shù)組就是一種解決辦法。在本文中,將介紹Java語言中數(shù)組的使用。

1、Java數(shù)組的定義和類型

數(shù)組是類型相同的元素的集合。也就是說,一個數(shù)組中所保存的數(shù)據(jù)都是一個類型的。首先,記住一句話:Java中的數(shù)組是引用類型。也就是說,即使一個數(shù)組中存的都是int數(shù)據(jù),這個數(shù)組的類型也是引用類型。

2、Java數(shù)組的聲明:

假設(shè)要聲明一個int型數(shù)組,可以有兩種聲明方式:

 
 
 
  1. int[] x;  
  2.  
  3. int y[]; 

假設(shè)要聲明一個Course類型數(shù)組,可以有兩種聲明方式:

 
 
 
  1. Course[] courses1;  
  2.  
  3. Course courses2[]; 

可見,Java語言中聲明數(shù)組有兩種方式,一種是[]放在數(shù)組元素類型后,一種是[]放到數(shù)組引用名字后。建議使用***種方式,即int[],Course[]。因為數(shù)組本身是一種數(shù)據(jù)類型,也就是說,從現(xiàn)在開始,看待int[],Course[],就應(yīng)該當(dāng)作一個類型看待,如同看待String一樣。

3、Java數(shù)組的初始化:

數(shù)組可以使用new關(guān)鍵字初始化,使用new初始化時,必須在[]內(nèi)指定數(shù)組的長度。

 
 
 
  1. int[] x=new int[3];  
  2.  
  3. Course[] courses1=new Course[2]; 

使用new初始化數(shù)組后,數(shù)組內(nèi)元素會被賦予默認值,如x中的元素均為0,courses1中的元素均為null。

如果在聲明的同時,即賦予初值,可以有如下兩種方式:

 
 
 
  1. Int[] y ={12,23,45};  
  2. Course courses2=new Course[]{new Course(),new Course()}; 

賦值后,數(shù)組y是一個長度為3的數(shù)組,courses2是一個長度為2的數(shù)組。

4、Java多維數(shù)組

例如二維數(shù)組的聲明,和初始化過程:

 
 
 
  1.    double[][] d=new double[3][];  
  2.  
  3. d[0]=new double[4];  
  4.  
  5. d[1]=new double[5];  
  6.  
  7. d[2]=new double[3];  
  8.  
  9.  
  10.  
  11. d[0][0]=10;  
  12.  
  13. d[0][1]=100

以上代碼,創(chuàng)建了一個二維數(shù)組,該數(shù)組包含3個一維數(shù)組,這3個一維數(shù)組長度分別為4,5,3。按照這樣的語法和邏輯,還可以聲明三維,四維等多維數(shù)組。

5、Java數(shù)組的長度

數(shù)組的長度都在初始化時被指定,一旦指定,再也不能改變,也就是說,數(shù)組的長度是不可變的。

如:

 
 
 
  1. int[] x=new int[3];  
  2.  
  3. System.out.println(x.length);//輸出3 

注意,數(shù)組的長度使用length屬性取出,而不是length()方法。

6、對數(shù)組的遍歷方法

方法一:使用長度控制循環(huán)

 
 
 
  1. int[] x=new int[3];  
  2.  
  3. for(int i=0;i
  4.  
  5.                System.out.println(x[0]);  
  6.  
  7.         } 

方法二:增強for循環(huán)

 
 
 
  1. int[] x=new int[3];  
  2.  
  3. for(int a:x){  
  4.  
  5.                System.out.println(a);  
  6.  
  7.         }       

接下來,對于上面學(xué)員選擇免費課程的程序進行修改。

 
 
 
  1. package com.csst.relation;   
  2.  
  3. public class Student {  
  4.  
  5.        private String name;  
  6.  
  7.          
  8.  
  9.        //1.關(guān)聯(lián)關(guān)系:Student關(guān)聯(lián)Course(1對多關(guān)系)  
  10.  
  11.        private Course[] courses=new Course[3];  
  12.  
  13.        private int index;  
  14.  
  15.          
  16.  
  17.        public Student(String name) {  
  18.  
  19.               super();  
  20.  
  21.               this.name = name;  
  22.  
  23.        }         
  24.  
  25.        //2.依賴關(guān)系:Student依賴Course  
  26.  
  27.        public void chooseCourse(Course course){  
  28.  
  29.               if(index<3){  
  30.  
  31.                      this.courses[index]=course;  
  32.  
  33.                      index++;  
  34.  
  35.               }else{  
  36.  
  37.                      System.out.println("最多選3門課程。");  
  38.  
  39.               }  
  40.  
  41.        }  
  42.  
  43.          
  44.  
  45.        public Course[] getCourse(){  
  46.  
  47.               return this.courses;  
  48.  
  49.        }  
  50.  

在處理1對多關(guān)系時,數(shù)組是常用的解決方案。數(shù)組的優(yōu)點是遍歷比較容易,缺點是長度一旦確定,就無法改變。如果對象間的1:n關(guān)系,n的變化范圍較大,就無法確定數(shù)組的長度。與數(shù)組類似,比數(shù)組更為靈活的解決方案,是集合,在以后的文章中會介紹。

【編輯推薦】

  1. Java教程 Java類的組成
  2. Java教程 Java類中的包
  3. Java教程 Java語言的訪問權(quán)限修飾符
  4. Java教程 Java類中的各種數(shù)據(jù)
  5. Java教程 Java語言中的數(shù)據(jù)類型及String類

文章標(biāo)題:Java教程Java語言中的數(shù)組
網(wǎng)站網(wǎng)址:http://m.5511xx.com/article/cocsois.html