java基础—第五章、方法
2023-09-11 14:21:22 时间
目录
第一节、方法的定义
- 方法是一段封装特定逻辑功能的代码
-
方法可以被反复的调用,减少代码的重复性,便于程序的维护和优化。
-
方法的5个要素: 修饰词 返回值类型 方法名 参数列表 方法体
一、定义格式:
//main函数 main方法 主方法 主函数
public static void main(String[] args) {
}
分析:
public static : [修饰词] 可以省略 不写表示当前所有修饰词为默认的。
void : 返回值类型 当前这个方法在使用后返回值的类型
void:无返回值类型
main : 方法名字 符合标识符命名规范且一般情况下采用小驼峰命名法。
(String[] args) : 参数列表 多个参数中间用逗号隔开 形式参数,当前方法调用时所需要 传入的参数类型
{} : 方法的逻辑体
二、定义参数和返回值:
-
在方法调用时,会将实际的参数值传递给方法的参数变量,必须保证参数类型和个数符合方法的声明。
-
方法在使用时,可以返回一个数据,称之为返回值。
-
方法在定义时必须指定返回值的类型。
-
有返回值时,写具体的返回值的类型
-
无返回值时,写void
第二节、方法的调用
一.return语句
1.有返回值时,返回具体的返回值结果
public static double sum2(double a,int b) {
//一定要声明合适的返回值的类型
return a + b;//返回方法的返回值
}
2.返回值类型为void时,可以使用return;
public static void testfor() {
for (int i = 0; i <= 1000; i++) {
if(i == 999) {
return;//立即结束方法,返回被调处
}
System.out.println(i);
}
}
二、调用方法时的参数传递
package com.hqyj.basic.helloworld;
public class Test01 {
public static int sum(int x , int y) {
return x + y;
}
public static void main(String[] args) {
int a = 5; int b = 6;
int result = sum(a,b);
}
}
第三节、编写方法所遵循的原则
-
功能要单一,一个方法完成一个功能
-
代码复用
第四节、练习
一、练习1
自定义方法,完成产生随机数组(长度和整数的范围)作为参数
package com.hqyj.javacode.methods;
import java.util.Arrays;
public class TestMethod1 {
//自定义方法生成一个随机数组。长度和整数的范围)作为参数
public static void main(String[] args) {
int[] arr = randomArray(20 ,200);
System.out.println("生成的数组为:"+ Arrays.toString(arr));
}
public static int[] randomArray(int length,int range) {
int[] arr = new int [length];
for(int i = 0;i < length; i ++) {
arr[i] = (int)(Math.random()*range);
}
return arr;
}
}
二、练习2
自定义方法生成一个随机数组,自定义一个冒泡排序方法,对数组进行排序输出
import java.util.Arrays;
public class HomeWork {
public static void main(String[] args) {
int[] arr = new int[20];
arr = randomArray(20,200);
System.out.println("生成的数组为:"+ Arrays.toString(arr));
arr = bubblingsort(arr);
System.out.println("排序后:"+Arrays.toString(arr));
}
// 1.自定义方法,完成产生的随机数组,长度和整数的范围作为参数
public static int[] randomArray(int length,int range){
int[] arr = new int [length];
for(int i = 0;i < length; i ++){
arr[i] = (int)(Math.random()*range);
}
return arr;
}
//2.冒泡排序方法
public static int[] bubblingsort(int[] arr){
for (int i = 0; i < arr.length -1; i++) {
for (int j = 0; j < arr.length - i -1; j++) {
if (arr[j] > arr[j + 1]) {
int t = arr[j];
arr[j] = arr[j +1];
arr[j + 1]= t;
}
}
}
return arr;
}
}
三、练习3
猜数字游戏:
1.系统产生一个0-100内的随机整数,用户输入一个数字猜!
2.猜大了提示“猜大了”, 猜小了提示“猜小了”,猜对了则打印所猜分数 和次数
3.如果用户中途退出,则输入-1 满分为100分,每猜一次扣3分。
package com.hqyj.javacode.methods;
import java.util.Scanner;
public class Guessing {
public static void main(String[] args) {
int randomNumber = (int)(Math.random()*100); //系统产生一个0-100内的随机整数
Scanner scanner = new Scanner(System.in);
int userNumber; //用户输入的数字
int guesscount = 0; //最终的猜测次数
int guessscore = 100; //最终的猜测分数
System.out.println(randomNumber);
System.out.println("游戏开始,请输入猜测的数字:0-100以内!!!");
while(true) {
userNumber = scanner.nextInt();
if (userNumber == -1) {
System.out.println("终止游戏,退出......");
break;
}
if (userNumber > randomNumber) { //猜大了
System.out.println("猜大了");
guesscount ++;
} else if (userNumber < randomNumber) { //猜小了
System.out.println("猜小了");
guesscount ++;
} else {
System.out.println("猜对了");
guesscount ++;
guessscore -= guesscount * 3;
System.out.println("您一共猜了" + guesscount + "次");
System.out.println("您的分数最终为:" + guessscore + "分");
break;
}
}
}
}
相关文章
- 历史上最简单Java环境变量配制方法
- [Java 基础] 使用java.util.zip包压缩和解压缩文件
- [Java基础] java多线程关于消费者和生产者
- Java面向对象基础--类的设计及分析问题的方法---用户登录例子
- Java面向对象基础--理解main方法
- java中遍历树形菜单,你可能不知道还有这样的方法
- java 中文乱码的解决方法
- Java中StringBuffer类的常用方法
- 蓝桥杯(Java方法、详细解法分析)基础练习 阶乘计算
- 改善JAVA代码01:考虑静态工厂方法代替构造器
- 【JAVA】Java 异常中e的getMessage()和toString()方法的异同
- macos:安装java 17.0.6(android studio报错:Unable to locate a Java Runtime.)
- 为什么java完爆php
- Java中的枚举与values()方法
- 【JAVA】Java 异常中e的getMessage()和toString()方法的异同
- 【Java】java使用反射访问对象方法和成员变量
- Java基础--通过反射获取成员方法并使用
- paip。java 高级特性 类默认方法,匿名方法+多方法连续调用, 常量类型
- paip. 解决java程序不能自动退出
- How to improve Java's I/O performance( 提升 java i/o 性能)
- 常见Java面试题 Files的常用方法都有哪些?
- Java List 最常用的 4 种去重方法以及性能对比测试数据(使用Kotlin 语言编程)
- java基础之synchronized使用方法
- java的wait和notifyAll使用方法
- Java中Scanner的使用方法
- java中集合类中Collection接口中的Map接口的常用方法熟悉
- Java开发基础入门之Java基础中的Stack类及其常用方法
- Java开发基础入门之Java基础中的Stack类及其常用方法
- Java基础(15)-方法详解
- 【java基础】方法重载和方法重写