JAVA總裁--Java數組基礎知識

1.數組的定義:

        數組是由一組類型相同的數據元素構成的有序集合,每個數據元素稱爲一個數組元素(簡稱爲元素),每個元素受n(n≥1)個線性關係的約束,每個元素在n個線性關係中的序號i1、i2、…、in稱爲該元素的下標,並稱該數組爲 n 維數組。

2.數組的特點:

        元素本身可以具有某種結構,屬於同一數據類型; 數組是一個具有固定格式和數量的數據集合。

 

3.數組的語法:

                                        package com.eduask.test;

                                            import java.util.Scanner;

                                                public class ArrayDemo {

                                            public static void main(String[] args) {
                                         1、第一種語法
                                              a. 定義一個int類型的數組
                                              int [] s;
                                              int s[];

                                                b.給數組劃分長度

                                            s=new int[5];
                                            s[0]=51;
                                            System.out.println("數組的長度:.length:"+s.length);

                                               c.動態賦值
                                            for(int i=0;i<s.length;i++){
                                            System.out.println("請輸入第"+(i+1)+"個數:");
                                            s[i]=new Scanner(System.in).nextInt();
                                            }

                                            System.out.println(s[0]);
                                            System.out.println(s[1]);
                                            System.out.println(s[2]);
                                            System.out.println(s[3]);
                                            System.out.println(s[4]);
                                            System.out.println(s[5]);
                                        2、第二種語法 靜態賦值
                                            int [] i={11,22,33,44,55};
                                            int [] ii={11,(int)2.9};
                                            System.out.println(ii[1]);
                                         3、第三種語法 較少使用

                                            int [] ss=new int[]{1,2,3,4,5};

View Code

3.實例題材參考:

實例1

//這裏是一個包名
package com.eduask.test;
//這裏導入輸入對象Scanner
import java.util.Scanner;

public class Test01 {
// 1.定義一個數組,由鍵盤輸入值來賦值,並輸出該數組的各值
public static void main(String[] args) {

      int[] a = new int[3];//聲明一個數組(長度爲3)
     //實例化輸入對象
     Scanner sc = new Scanner(System.in);
    //遍歷數組
   for(int i=0; i<a.length; i++ ){
   System.out.println("請輸入第"+(i+1)+"個數");
   int num = sc.nextInt();//由鍵盤輸入值來賦值
   a[i] = num;//把這個值給到數組
}
   //打印輸出
  for(int i=0; i<a.length; i++){
  System.out.print(a[i]+" ");
     }
  }
}

實例2

package com.eduask.test;

import java.util.Scanner;

/**
利用數組保存數據,完成超市小票的打印
如:

請輸入購買商品:毛巾 名稱
請輸入單價:25.0 單價
請輸入購買數量:2 數量

請輸入購買商品:盆
請輸入單價:15.0
請輸入購買數量:3

======歡迎光臨**超市===========
商品名稱 單價 數量 總價
毛巾 25.0 2 50.0
盆 15.0 3 45.0

您一共消費:95.0元


-------------------------------------------------
將商品的名稱以及單價存儲在數組中,用戶輸入商品名稱,只有當貨架上有該商品時,
將該商品存入客戶購買商品的數組中,從而輸出超市小票
如:
請輸入商品名稱:毛巾
(如果沒有該商品)
對不起,沒有這件商品
(如果有該商品)
請輸入購買數量:4

循環。。。。直到用戶退出爲止


======歡迎光臨**超市===========
商品名稱 單價 數量 總價
毛巾 25.0 2 50.0
盆 15.0 3 45.0

您一共消費:95.0元

注意:商品的單價不需要輸入,而是由之前定義的數據得到

*
*/
public class Test04 {

public static void main(String[] args) {
//實例化輸入對象
Scanner sc=new Scanner(System.in);
//定義商品數組
String [] names={"毛巾","牙刷","牙膏","盆子","礦泉水"};
//定義價格數組 和商品進行對應
double [] prices={9.9,18.8,25.5,33.9,15};

//輸入你要購買商品種類
System.out.println("請輸入你需要購買商品的種類:");
int num=sc.nextInt();

int [] goumai=new int[num];//該數組存的是購買商品的下標
int [] count=new int[num]; //該數組存放的是購買項目的數量

double sum=0.0;//存儲總消費額

//通過循環的方式,,進行購買商品
for(int j=0;j<goumai.length;j++){

System.out.println("請輸入你要購買第"+(j+1)+"類商品:");
//輸入購買商品名稱
String name=sc.next();
int index=-1;//用於記錄商品的下標位

//查找商品列表是否存在該商品
for(int i=0;i<names.length;i++){
//判斷輸入的商品名稱是否在商品數組中
if(name.equals(names[i])){
index=i;//true 存儲下標 false 不存儲下標
}
}
//判斷商品是否在商品數組中找到
if(index!=-1){
System.out.println("該商品存在");
goumai[j]=index; //把商品的下標存儲在數組中
System.out.println("請輸入你要購買的數量:");
count[j]=sc.nextInt();//對應下標 存儲購買的數量
}else{
System.out.println("該商品不存在");
j--;//如果購買的商品不存在, 自減 重新購買商品
}

}

System.out.println("======歡迎光臨J18超市===========");
System.out.println("商品名稱 單價 數量\t總價");
//循環購買的數組,拼接超市小票
for(int i=0;i<goumai.length;i++){
int xiabiao=goumai[i]; //取購買商品的下標位
System.out.print(names[xiabiao]+"\t");
System.out.print(prices[xiabiao]+"\t");
System.out.print(count[i]+"\t");
System.out.print(prices[xiabiao]*count[i]+"\n");
sum+=prices[xiabiao]*count[i]; //每種類型的價格累加

}


System.out.println("您一共消費:"+sum+"元 ");


    }

}

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章