续java学习16:https://blog.csdn.net/qq_40790831/article/details/85951515

利用数组,方法,实现案例:商品库存信息查询,库存数更改

思路:
        1、打印输出菜单:{ 1.查看商品库存信息;2.修改商品库存信息;3.退出程序}
        2、拿到用户的的选择,调用对应的方法:
            用户选择1:打印输出商品库存信息,提示用户是否返回主菜单
            用户选择2:循环打印输出商品名称,提示用户输入商品库存数目
            用户选择3:结束程序

/* 利用数组,方法,实现案例:商品库存信息查询,库存数更改 */import java.util.Scanner ; // 导入Scanner类public class ShoppArrayMethod {/* 打印输出菜单信息 */public static void showMenu () {System.out.println() ; // 换行System.out.println( "请根据选项选择您的操作" ) ;System.out.println( "1、查看商品库存信息" ) ;System.out.println( "2、修改商品库存信息" ) ;System.out.println( "3、退出程序" ) ;System.out.print( "请选择:" ) ;}/* 打印输出商品库存信息,并提示用户是否返回主菜单 */public static void outShopp ( String [] sN , double [] sP , int [] sM ) {System.out.println() ; // 换行int len = sN.length ; // 定义变量,并将数组的长度赋值给变量System.out.println( "商品名称\t商品单价(元/件)\t商品库存(件)" ) ; // 输出表头信息 int shoppSum = 0 ; // 定义变量,用于保存商品总库存*double shoppPriceSum = 0 ; // 定义变量,用于保存商品总价值//for循环for ( int i = 0 ; i < len ; i ++ ) {System.out.println( sN[ i ] + "\t" + sP[ i ] + "\t\t" + sM[ i ] ) ; // 输出商品库存信息shoppSum += sM[ i ] ; // 计算商品库存总和 shoppPriceSum += ( sP[ i ] * sM[ i ] ) ; // 计算商品总价值}System.out.println( "商品总库存:" + shoppSum + "件" ) ; // 打印输出商品总库存信息System.out.println( "商品总价值:" + shoppPriceSum + "元" ) ; // 打印库存商品的总价值System.out.print( "请输入“0”反返回主菜单:" ) ; // 打印输出提示用户输入0返回主菜单}/* 用户修改商品库存信息 */public static void updateShopp ( String [] sN , int [] sM ) {System.out.println() ; // 换行Scanner sc = new Scanner( System.in ) ; // 创建Scanner变量,用于实现输入// for循环for ( int i = 0 ; i < sN.length ; i ++ ) {System.out.print( "请输入" + sN[ i ] + "的库存数目:" ) ; // 打印输出提示用户更改商品库存数量int num = sc.nextInt() ; // 将用户输入的数值赋值给变量numwhile ( true ) {if ( num < 0 ) {System.out.print( "输入的数值有误,请重新输入:"); // 当用户输入的值小于0时,提示用户重新输入num = sc.nextInt() ; // 重新拿到用户的输入} else {sM[ i ] = num ; // 当用户输入的数值大于且等于0,将值赋值给对应的商品库存数量元素break ; // 跳出内循环}   }   }System.out.print( "请输入“0”反返回主菜单:" ) ; // 打印输出提示用户输入0返回主菜单}public static void main ( String [] args ) {// 定义商品库名称数组String [] shoppName = { "ASUS-W50JK" , "ThinkPad650" } ;// 定义商品价格数组double [] shoppPrice = { 4500 , 6999.9 } ;//  定义商品库存数量数组int [] shoppNum = { 0 , 0 } ;Scanner sc = new Scanner( System.in ) ; // 创建Scanner变量// 输出菜单信息showMenu() ; int menuNum = sc.nextInt() ; // 获取用户输入的菜单选项:*boolean b = true ;while ( b ) {switch ( menuNum ) {case 0 : { // 返回主菜单showMenu() ; // 调用showMenu方法,打印输出主菜单信息menuNum = sc.nextInt() ; // 重新获取用户输入信息break ;}case 1 : { // 查询商品库存信息 outShopp( shoppName , shoppPrice , shoppNum ) ; //调用outShopp方法,打印输出商品库存信息menuNum = sc.nextInt() ; // 重新获取用户输入信息while ( menuNum != 0 ) {System.out.print( "您没有进行合法操作,请重新输入:" ) ; // 打印输出提示用户输入合法信息 menuNum = sc.nextInt() ; // 重新获取用户输入信息}break ;}case 2 : { // 修改商品库存信息updateShopp( shoppName , shoppNum ) ; // 调用updateShopp方法,提示用户更改商品库存menuNum = sc.nextInt() ; // 重新获取用户输入信息while ( menuNum != 0 ) {System.out.print( "您没有进行合法操作,请重新输入:" ) ; // 打印输出提示用户输入合法信息 menuNum = sc.nextInt() ; // 重新获取用户输入信息}break ; }case 3 : { // 退出程序b = false ;break ;}default : {System.out.println( "您没有选择合法操作,请重新选择。" ) ; // 打印输出提示用户输入合法信息 showMenu() ; // 调用showMenu方法,打印输出主菜单信息menuNum = sc.nextInt() ; // 重新获取用户输入信息break ;}}}}
}

java学习17-采用数组、循环实现简单商品库存信息的查询与更改案列相关推荐

  1. Java学习-17 正则表达式简述

    Java学习-17 正则表达式 1.什么是正则表达式? 正则表达式是构成搜索模式(search pattern)的字符序列. 当您搜索文本中的数据时,您可使用搜索模式来描述您搜索的内容. 正则表达式可 ...

  2. Java学习的第七周之简单的SQL语句

    Java学习的第七周之简单的SQL语句 一 简单SQL语句: 1.查询表结构 desc 表名; 2.插入数据 --方式一: 默认全部插入数据INSERT INTO 表名 VALUES (值1,值2,值 ...

  3. JAVA学习 API_day04(迭代器, 数组和集合的转换, Comparable和Comparator, 二叉树)

    迭代器, 数组和集合的转换, Comparable和Comparator, 二叉树 1.迭代器 2.数组和集合的转换 3. Comparable和Comparator 4.有序二叉树 1.迭代器 1. ...

  4. java学习基础课之数组(渡一教育)(二)

    记录自己看渡一教育免费java基础课的学习过程. int score = 90; 根据score成绩来进行区间的判定 不及格 及格 中等 良好 优秀 满分- score是一个变量空间(小容器)-一个学 ...

  5. Java:java学习笔记之锁机制的简单理解和使用

    锁机制的简单理解和使用 锁机制 1.背景 2.定义 3.锁的种类 4.乐观锁 VS 悲观锁 4.1.悲观锁 4.2.乐观锁 4.3.举例说明 4.4.CAS算法 4.4.1.CAS使用 4.4.2.C ...

  6. Java学习 --集合和数组

    集合和数组: 都是对多个数据进行存储操作的结构,加成java容器. 数组存储的特点: 一旦初始化以后,长度就确定了,元素类型也就确定了.对于指定一个数组,我们只能操作指定类型的数据. 数组存储数据是有 ...

  7. Java学习课程—使用for循环语句

    文章目录 本章任务使用循环语句 任务一:打印九九乘法表 (一)编程实现 (二)知识讲解 1.双重循环语法格式 (三)拓展练习 任务一.打印字符等腰三角形 任务二.猜数小游戏 (一)编程实现 本章任务使 ...

  8. Java学习笔记七——数组工具类Arrays

    数组工具类Arrays Java提供的Arrays类里包含的一些static修饰的方法可以直接操作数组.若将里面的方法用熟的话,那开发效率会大大提高.下面介绍其中的方法. List<T> ...

  9. Java学习笔记_数组

    数组的概念 是一种容器,可以同时存放多个数据值 数组的特点 数组是一种引用数据类型 数组当中的多个数据,类型必须统一 数组的长度在程序运行期间不可改变 数组的初始化 在内存当中创建一个数组,并且向其中 ...

最新文章

  1. php 编译mcrypt,centos 6下编译安装php时安装mcrypt支持库
  2. 【Windows系统】基于vscode搭建go语言开发环境
  3. python实训项目-Python开发基础-项目实训-在线投票系统.pptx
  4. seaJS简介和完整实例
  5. python替代_2.3.1 Python 实现的替代者
  6. 注册Tomcat服务为系统服务
  7. 扩展Editplus为Java IDE
  8. 解决h264bitstream的一个bug
  9. openssl校验SSL证书public key是否配对
  10. 阶段3 3.SpringMVC·_05.文件上传_2 文件上传之传统方式上传代码回顾
  11. 实战系列之天气预报实时采集
  12. LINUX访问WINDOWS网络共享目录
  13. Rust: Bindgen绑定CTP C++原生接口尝试
  14. 桌面壁纸所放位置+魔镜壁纸的下载方法
  15. css 圆形背景icon_CSS3 各种色彩搭配方案的圆形LOADING动效
  16. 车载DSP音频项目研究开发技术的深化
  17. 安卓的图片占用内存,图片分辨率,图片适配不同屏幕的研究
  18. 印象笔记,石墨笔记和Effie哪个更适合学生?
  19. (八)以交易为生:交易系统
  20. 运行金蝶KIS记账王V10.0对系统有什么要求

热门文章

  1. 基于JSP物流中心仓储信息管理系统
  2. Floor Number
  3. 《测试之道》第三篇——吴钩霜雪明
  4. linux下查看当前用户、所有用户的方法
  5. 常用字体的unicode表示
  6. Π和根据阈值和关系式求圆周率
  7. flash计算机基础实验,计算机应用基础实验报告(flash).pdf
  8. 奇怪的Flash导出问题
  9. 计算机的软盘有没有磁性材料,磁性材料竟然还有如此惊人的历史!
  10. 定时器Timer(三)—— 定时器Timer的使用