JAVA学习day05
1、方法就是用来完成解决某件事件或者实现某个功能的办法。
2、方法的定义格式:
修饰符 返回值类型 方法的名字 (参数列表....){ 方法的功能主体 循环,判断,变量,比较,运算 return ; } 修饰符:固定写法 public static 返回值类型: 方法在运算后,结果的数据类型 方法名: 自定义名字,满足标识符规范,方法名字首字母为小写,后面每个单词首字母大写 参数列表: 方法的运算过程中,是否有未知的数据,如果有未知的数据,定义在参数列表上(定义变量) return: 方法的返回,将计算的结果返回,结束方法
3、调用方法:让一个方法运行起来
4、调用方法执行流程
方法参数里面的都是形参 实际调用时的参数是实参 5、方法调用的内存图 栈:先进后出 后进先出 6、方法定义和使用的注意事项 1、方法不能定义在另一个方法的里面; 2、写错方法名字; 3、写错了参数列表; 4、方法返回值是void,方法中可以省略return不写; Return 后面不能有代码; 5、方法返回值类型,和return 后面数据类型必须匹配; 6、方法重复定义问题; 7、调用方法的时候,返回值是void,不能写在输出语句中; 7、方法的重载 方法的重载特性(overload) 在同一个类中,允许出现同名的方法,只要方法的参数列表不同即可,这样方法就是重载 参数列表不同:参数的个数,数据类型,顺序 对于重载的调用,根据参数传递进行区分 8、方法重载的注意事项 1、参数列表必须不同 2、重载和参数变量名无关 3、重载和返回值类型无关 4、重载和修饰符无关 技巧:重载看方法名和参数列表 9、方法参数是基本数据类型 方法,调用中的参数传递问题 1、方法参数是基本数据类型 2、方法参数是引用类型:传递的是内存地址
10、库存练习
package com.ghy.study;
/*
实现商品的库存管理
功能: 1. 展示用户选择功能清单 2. 根据选择的功能编号,进行不同的操作 A. 展示所有库存 B. 修改库存数量 分析: 1. 展示用户清单: 输出语句, 用户输入, 选择功能序号 2. 根据选择,调用不同的方法 switch语句 case 1 2 3 A 展示库存 将存储商品的数组,遍历 B 修改库存 修改所有的库存数量
*/
import java.util.Scanner;
public class ShopMethod {
public static void main(String[] args){ //使用数组,保存商品的信息 //品名,尺寸,价格,库存数, 定义5个数组 String[] brand = {"MacBookAir","ThinkpadT450"}; double[] size = {13.3,15.6}; double[] price = {9998.97,6789.56}; int[] count = {0,0}; while(true){ int choose = chooseFunction(); switch(choose){ case 1: //调用查看库存清单方法 printStore(brand,size,price,count); break; case 2: //调用修改库存的方法 update(brand,count); break; case 3: return ;
default: System.out.println("没有这个功能"); break; } } } /* 定义方法,修改所有商品的库存 用户输入1个,修改1个 返回值,没有 参数, 库存数的数组, 品名数组 */ public static void update(String[] brand, int[] count){ //遍历数组,遍历到一个,修改一个 //接受键盘输入 Scanner sc = new Scanner(System.in); //遍历数组 for(int i = 0; i < brand.length ; i++){ System.out.println("请输入"+brand[i]+"的库存数"); //键盘输入,录入库存, 存储到库存的数组中 int newCount = sc.nextInt(); count[i] = newCount; } //int chooseNumber = sc.nextInt(); } /* 定义方法,展示所有的库存清单,遍历 返回值,没有 参数, 数组 */ public static void printStore(String[] brand,double[] size,double[] price,int[] count){ System.out.println("----------商场库存清单----------"); System.out.println("品牌型号 尺寸 价格 库存数"); //定义变量,计算总库存数,和总价格 int totalCount = 0; int totalMoney = 0; //遍历数组,将数组中所有的商品信息打印出来 for(int i = 0 ; i < brand.length ; i++){ System.out.println(brand[i]+" "+size[i]+" "+price[i]+" "+count[i]); totalCount += count[i]; totalMoney += count[i]*price[i]; } System.out.println("总库存数: "+totalCount); System.out.println("商品库存总金额: "+totalMoney); } /* 定义方法,实现用户的选择功能,功能的需要返回来 返回值, int 参数, 没有 */ public static int chooseFunction(){ System.out.println("-------------库存管理------------"); System.out.println("1.查看库存清单"); System.out.println("2.修改商品库存数量"); System.out.println("3.退出"); System.out.println("请输入要执行的操作序号:"); //接受键盘输入 Scanner sc = new Scanner(System.in); int chooseNumber = sc.nextInt(); return chooseNumber; } }
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
150行JavaScript代码实现增强现实
增强现实技术(Augmented Reality,简称 AR),是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。这种技术1990年提出。随着随身电子产品CPU运算能力的提升,预期增强现实的用途将会越来越广。 本文介绍使用JavaScript开源框架AR.js实现的增强现实的Hello World例子。 先看效果: 首先在手机浏览器里打开我部署在github page上的这个demo应用: https://i042416.github.io/FioriODataTestTool2014/WebContent/098_ar.html 我用的是Android手机安装的Chrome浏览器。 打开网页,会提示你是否允许这个网页应用访问您的手机摄像头。点击允许: 用手机上
- 下一篇
Windows下安装Scrapy方法及常见安装问题总结——Scrapy安装教程
这几天,很多朋友在群里问Scrapy安装的问题,其实问题方面都差不多,今天小编给大家整理一下Scrapy的安装教程,希望日后其他的小伙伴在安装的时候不再六神无主,具体的教程如下。 Scrapy是Python网络爬虫的一个框架,十分好用,深得大家的青睐,其工作原理,在在此就不赘述了。 1、正常我们在Python库的时候,只需要利用cmd命令打开命令行窗口,然后输入pip install 库,就可以正常安装了,但是在安装Scrapy的时候,输入pip install scrapy之后往往会碰到下图的问题。 2、这个问题的出现,是因为我们缺乏libxml2安装包。现在只要我们安装这个包之后,就可以顺利安装scrapy了。给大家安利一个福利,介绍给大家一个非常实用的Python包网站,这个网站很神奇,里边的Python包专门用于Windows下的安装的,如下图所示。 3、之后在该网站上查找lxml,也可以输入Ctrl+f进行查找,找到之后如下图所示。 4、点击“lxml”,找到lxml安装包,如下图所示。找到对应自己Python版本的lxml安装包,小编的电脑是64位的,而且Python版本是...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Hadoop3单机部署,实现最简伪集群
- CentOS8编译安装MySQL8.0.19
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Mario游戏-低调大师作品
- CentOS6,CentOS7官方镜像安装Oracle11G