抽象轻松java

嗨嗨嗨!

没想到吧,出现了抽象轻松第4种语言系列(我也没想到)

简单的java程序,看完就懂的简单逻辑——购物车系统

购物车,首先要有商品吧,现实中的商品有什么属性?

名字,价格,数量,编码等等

知道了这些属性,就应该考虑用什么来存放它们!

是整数型?是浮点型?是对象?还是数组?

很显然,数组就成了我们的首选!

声明一个数组,用来存放商品的属性

购物车系统包括了增删改查结算5个功能,除了这五个功能还有一个首页选择功能

也就是说,一个购物车系统包括了6个功能,通过选择进入剩下的五个模块

开始编写,为了照顾情绪,我们先做一件特别简单的事

public class GoodsShop {public static void main(String[] args) {System.out.println("欢迎来到购物车管理系统");}
}

没错,先简单的输出一句话

定义一个类,用来存放商品对象

class obj {String name;//商品名int numb;//商品数量int id;//商品编码double money;//商品价格}

商品的属性有了,该用车子装起来了吧,声明数组

        System.out.println("欢迎来到购物车管理系统");obj [] arr = new obj[50];//obj[50]为购物车的数量上限

又因为我们的商品对象和测试类不在一起,所以想要使用obj类里面的方法是需要调用的

加上我们要输入内容,随便也把Scanner一起调用

        System.out.println("欢迎来到购物车管理系统");obj [] arr = new obj[50];//obj[50]为购物车的数量上限obj obj = new obj();//调用objScanner scanner = new Scanner(System.in);//输入

基础的工作做完了,改进入功能的编写了

第一个功能编写,选择页面,我们使用循环输入值,通过判断,进入对应的方法

循环有三个:do...while , while ,for

选择语句,if ,if...else ,switch

因为运行完一个功能就要跳回改页面,为了简单可以用while

选择语句,总不可能写5个if...else吧,但是如果你愿意还是可以写5个的,因为他们有相同的逻辑

使用switch()选择会更加的简单

while (true) {System.out.println("输入1进入增加页面");System.out.println("输入2进入查看页面");System.out.println("输入3进入修改页面");System.out.println("输入4进入删除页面");System.out.println("输入5进入结算页面");double shuzi = scanner.nextDouble();switch ((int) shuzi) {case 1 : obj.add();break;//调用增case 2 : obj.cha();break;//调用查case 3 : obj.del();break;//调用删case 4 : obj.gai();break;//调用改case 5 : obj.sum();break;//调用结算default:System.out.println("请重新输入");}}

现在代码就变成这样了,调用要有方法原型吧,在类里面把方法写入

class obj {String name;//商品名int numb;//商品数量int id;//商品编码double money;//商品价格public static void add(){System.out.println("欢迎来到增加页面");}public static void cha(){System.out.println("欢迎来到查看商品页面");}public static void del(){System.out.println("欢迎来到删除页面");}public static void gai(){System.out.println("欢迎来到修改页面");}public static void sum(){System.out.println("欢迎来到结算页面");}
}

到了这里就先停下来了

先完成大体的框架

import java.util.Scanner;public class GoodsShop {public static void main(String[] args) {System.out.println("欢迎来到购物车管理系统");obj [] arr = new obj[50];//obj[50]为购物车的数量上限obj obj = new obj();//调用objScanner scanner = new Scanner(System.in);//输入while (true) {System.out.println("输入1进入增加页面");System.out.println("输入2进入查看页面");System.out.println("输入3进入修改页面");System.out.println("输入4进入删除页面");System.out.println("输入5进入结算页面");double shuzi = scanner.nextDouble();switch ((int) shuzi) {case 1 : obj.add();break;//调用增case 2 : obj.cha();break;//调用查case 3 : obj.del();break;//调用删case 4 : obj.gai();break;//调用改case 5 : obj.sum();break;//调用结算default:System.out.println("请重新输入");}}}
}class obj {String name;//商品名int numb;//商品数量int id;//商品编码double money;//商品价格public static void add(){System.out.println("欢迎来到增加页面");}public static void cha(){System.out.println("欢迎来到查看商品页面");}public static void del(){System.out.println("欢迎来到删除页面");}public static void gai(){System.out.println("欢迎来到修改页面");}public static void sum(){System.out.println("欢迎来到结算页面");}
}

你的每一次输入,都会进入不同的页面

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/143171.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Oracle 12c自动化管理特性的新进展:自动备份、自动恢复和自动维护功能的优势|oracle 12c相对oralce 11g的新特性(3)

一、前言: 前面几期讲解了oracle 12c多租户的使用、In-Memory列存储来提高查询性能以及数据库的克隆、全局数据字典和共享数据库资源的使用 今天我们讲讲oracle 12c的另外的一个自动化管理功能新特性:自动备份、自动恢复、自动维护的功能 二、自动备份、自动恢复、自动维护…

IntelliJ IDEA 介绍、安装、配置优化与快捷键大全

一、简介 IDEA全称 IntelliJ IDEA,是Java编程语言的集成开发环境。IntelliJ在业界被公认为最好的Java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能…

分布式并行训练(DP、DDP、DeepSpeed)

[pytorch distributed] 01 nn.DataParallel 数据并行初步 数据并行 vs. 模型并行 数据并行:模型拷贝(per device),数据 split/chunk(对batch切分) 每个device上都拷贝一份完整模型,每个device分…

Mysql高级语句(视图表 、存储过程、条件语句、循环语句)

Mysql高级语句(视图表 、存储过程、条件语句、循环语句) 一、 CREATE VIEW(视图)1.1、 视图表概述1.2、 视图表能否修改?(面试题)1.3、 基本语法1.3.1、 创建1.3.2、 查看1.3.3 、删除 1.4、 通…

喜报 |海云安斩获鲲鹏应用创新大赛2023广东赛区双料大奖!

近日,由深圳市工业和信息化局、深圳市南山区人民政府、深圳市南山区工业和信息化局指导,华为技术有限公司、深圳市金融攻关基地、广东省信息技术应用创新产业联盟、鲲鹏产业源头创新中心(深圳)有限公司主办,深圳市软件…

MySQL查询表结构方法

MySQL查询数据库单个表结构代码 – 查询数据库表信息 SELECT​ COLUMN_NAME 列名,​ DATA_TYPE 字段类型,​ CHARACTER_MAXIMUM_LENGTH 长度,​ IS_NULLABLE 是否为空,​ IF(column_key PRI,Y,) 是否为主键,​ COLUMN_DEFAULT 默认值,​ COLUMN_COMMENT 备注FROM​ INFORMAT…

数据分发服务(DDS, Data Distribution Service)简介

什么是DDS ? 工业物联网成熟的数据连接标准 OMG 数据分发服务 (DDS™) 是一个中间件协议和 API 标准,用于来自 Object Management Group (OMG) 的以数据为中心的连接。它将系统的组件集成在一起,提供业务和关键任务物联网 (IoT) 应用程序所…

华为杯数学建模比赛经验分享

再过一周左右,第二十届华为杯数学建模比赛就要开赛了,所以今天分享一下个人数学建模比赛的经验。 今天给大家分享一期关于华为杯数学建模比赛的经验分享,我将从以下三个方面展开说明: (1)如何准备数学建模比赛&#x…

开辟ICT新视野 直通华为云专家:一堂华为云Astro低代码启蒙课 ——华为云HCSD校园沙龙之西安站

在快速发展的信息时代,ICT(即:信息和通信技术)行业成为众多高校应届生进军的最新领域。但刚步入大学校园的学生,仍困扰于「我应该如何抓住这一趋势?怎样规划职业生涯才切实可行?」。 在飘溢激动…

vue+element plus 使用table组件,清空用户的选择项

<el-table ref"tableRef"> .... </el-table> <script lang"ts" setup> import { onMounted, reactive, ref, nextTick } from vue const clearBtn () > {console.log(清空用户的选择项)tableRef.value.clearSelection() } </scr…

八大排序详解

目录 1.排序的概念及应用 1.1 排序的概念 1.2 排序的应用 1.3 常见的排序算法 2.常见排序算法的实现 2.1 直接插入排序 2.1.1 基本思想 2.1.2 动图解析 2.1.3 排序步骤&#xff08;默认升序&#xff09; 2.1.4 代码实现 2.1.5 特性总结 2.2 希尔排序 2.2.1 基本思…

数据结构与算法基础-(3)

&#x1f308;write in front&#x1f308; &#x1f9f8;大家好&#xff0c;我是Aileen&#x1f9f8;.希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流. &#x1f194;本文由Aileen_0v0&#x1f9f8; 原创 CSDN首发&#x1f412; 如…

Java 多线程基础

文章目录 1. 认识线程1.1 概念1.1.1 线程是什么1.1.2 为什么要有线程1.1.3 进程和线程的区别1.1.4 Java的线程和操作系统线程的关系 1.2 第一个多线程程序1.3 创建线程1.4 多线程的优势 2. Thread 类及其常用的方法2.1 Thread 的常见构造方法2.2 Thread 的几个常见属性2.3 启动…

EasyExcel导出转换@ExcelProperty注解中converter不生效,以及EasyExcel导入日期转换失败问题

用EasyExcel做导出&#xff0c;需要用ExcelProperty做格式转换&#xff0c;比如日期转换&#xff0c;枚举类转换 然后新建一个转换类 里面有两个实现方法&#xff0c;converToJavaData是导入时&#xff0c;数据转换定义格式&#xff0c;converToExcelData是导出时做数据转换的。…

一款强大的ntfs磁盘读写工具Paragon NTFS 15破解版百度网盘下载

今天再给大家分享一款NTFS工具Paragon NTFS 15&#xff0c;Paragon NTFS 15破解版是目前的最新版&#xff0c;需要的赶快收藏&#xff0c;地址失效可以留言。 Paragon Ntfs For Mac 15下载&#xff1a;https://souurl.cn/s84CCB Crcak链接: https://pan.baidu.com/s/1c2Hx7QBE…

idea环境下如何打包可运行jar?

工作中有时候偶尔写一些工具类、小程序&#xff0c;可是java程序员制作一个可运行jar实在折腾&#xff0c;利用idea开发环境&#xff0c;可以快速打包自己的可运行jar。具体怎么操作呢&#xff1f; 创建一个空白的java项目并完成自己的程序开发 完成java代码&#xff1a; /**…

SpringMVC 学习(四)RestFul 风格

5. RestFul 风格 5.1 简介 概念 Restful就是一个资源定位及资源操作的风格。不是标准也不是协议&#xff0c;只是一种风格。基于这个风格设计的软件可以更简洁&#xff0c;更有层次&#xff0c;更易于实现缓存等机制。 功能 资源&#xff1a;互联网所有的事物都可以被抽象为…

华为手机如何开启设置健康使用手机模式限制孩子玩手机时间?

华为手机如何开启设置健康使用手机模式限制孩子玩手机时间&#xff1f; 1、在手机上找到「设置」并点击打开&#xff1b; 2、在设置内找到「健康使用手机」并点击进入&#xff1b; 3、开启健康使用手机后&#xff0c;选择孩子使用&#xff1b; 4、在健康使用手机内&#xff0c…

【Java接口性能优化】skywalking使用

skywalking使用 提示&#xff1a;微服务中-skywalking使用 文章目录 skywalking使用一、进入skywalking主页二、进入具体服务1.查看接口 一、进入skywalking主页 二、进入具体服务 可以点击列表或搜索后&#xff0c;点击进入具体服务 依次选择日期、小时、分钟 1.查看接口 依次…

系统集成|第十二章(笔记)

目录 第十二章 沟通管理12.1 沟通的基本概念12.2 主要过程12.2.1 规划沟通管理12.2.2 管理沟通12.2.3 控制沟通 12.3 常见问题 上篇&#xff1a;第十一章、项目人力资源管理 下篇&#xff1a;第十三章、干系人管理 第十二章 沟通管理 沟通管理在项目计划、执行、监控过程中具有…