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+"元 ");
}
}
转载于:https://blog.51cto.com/12167213/1862043
JAVA总裁--Java数组基础知识相关推荐
- Java编程语言学习:Java语言编程的基础知识之Java的变量与数据类型、符号、运算符、数组Array总结之详细攻略
Java编程语言学习:Java语言编程的基础知识之Java的变量与数据类型.符号.运算符.数组Array总结之详细攻略 目录 Java语言编程的基础知识之Java的变量与数据类型.符号.运算符.数组总 ...
- [Java面试三]JavaWeb基础知识总结.
[Java面试三]JavaWeb基础知识总结. 1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Int ...
- 【Java面试高频问题】Java数据结构和算法基础知识汇总
文章目录 Java数据结构和算法基础知识 一.Java数据结构 1. 线性结构:数组.队列.链表和栈 1.1 数组(Array) 1.2 稀疏数组 1.3 队列(Queue) 1.4 链表(Linke ...
- 学习笔记:Java 并发编程①_基础知识入门
若文章内容或图片失效,请留言反馈. 部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 视频链接:https://www.bilibili.com/video/av81461839 视频下载: ...
- java最基本的基础知识
java最基本的基础知识.这种东西应该印在脑子里雨打不动,风吹不走.以后不能为少个分号或缺个逗号之类的小问题所出错. 1.分隔符:超到分隔的作用. 有半角的分号(" ; ").逗号 ...
- Java中的线程基础知识
Java中的线程基础知识 1.线程概念 线程是程序运行的基本执行单元.当操作系统(不包括单线程的操作系统,如微软早期的DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,必须至少建立一个 ...
- java入门应该学什么_初学Java应该掌握哪些基础知识?
Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档.这对于那些迷恋于WEB浏览的人们来说简直不可容忍.Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中 ...
- 【Java】javaSE的基础知识概括(完)
十.String类 1.认识Sring类 字符串由一连串的字符组成,在Java中使用双引号""包裹表示,它可以是一个字符,也可以是一个字符序列或者由多个字符序列组成.字符串的应用非 ...
- java入门之计算机基础知识
什么是计算机?计算机在生活中的应用举例 计算机(Computer)全称:电子计算机,俗称电脑.是一种能够按照程序运行,自动.高速处理海量数据的现代化智能电子设备.由硬件和软件所组成,没有安装任何软件 ...
- Java核心技术 卷1 基础知识
网站 更多书籍点击进入>> CiCi岛 下载 电子版仅供预览及学习交流使用,下载后请24小时内删除,支持正版,喜欢的请购买正版书籍 电子书下载(皮皮云盘-点击"普通下载" ...
最新文章
- Angular 4 依赖注入教程之一 依赖注入简介
- fliqlo windows_Windows小众软件工具推荐
- ugui unity 取消选择_Unity暑期萌新入门:环境篇
- mount: unknown filesystem type 'LVM2_member'解决方案
- python制作一个计时器_如何在python中创建一个反应计时器作为GUI?
- 美团技术:百亿规模API网关服务Shepherd的设计与实现
- qgis oracle,用 QGIS 画矢量交通路线图
- CSS-解决inline-block空隙的最好方法
- oracle出现数据坏块ORA-01578 ORA-01110 ORA-26040解决办法。
- 搭建SFTP服务器实现文件上传
- 1080 端口被占用
- 找代做java,代做JAVA程序作业、代写学生信息查询系统、代做JAVA实验
- 用布尔代数简化下列各逻辑表达式
- 数据可视化发挥流程的价值——江汽物流数据监控平台建设经验
- CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期
- 2019亚洲蓝牙大会成果盘点
- Android登录客户端,验证码的获取,网页数据抓取与解析,HttpWatch基本使用
- Python 从 Excel 读取链接下载文件
- Qt实现二维码的编解码
- 计算机提取干涉条纹原理,两种提取Fabry-Perot干涉条纹圆心的新方法
热门文章
- python爬虫re_python网络爬虫之三re正则表达式模块
- 计算机最低分怎么英语,编写一个学生类 有年龄 英语、数学、计算机三门成绩 求平均分、最高分、最低分...
- 启动后显示不了数据_90后都买不起房?统计数据显示:90后成了城市租房主力!...
- java eml文件解析_java 解析 eml的源代码
- 华为鸿蒙战略布局,继5G与鸿蒙后又一重要布局:华为发布计算战略
- python一个对象只能被一个变量引用吗_Python中的变量、对象、引用
- pytorch 对抗样本_【天池大赛】通用目标检测的对抗攻击方法一览
- 数据建模_浅谈数据仓库建设中的数据建模方法
- html没有内容怎么爬,Url没有在网页中返回正确的html(对于我的Java爬虫)
- 运算放大器基本公式_跨阻放大器稳定性