java基础知识---关于方法的定义和使用
其他
2018-07-19 10:09:13
阅读次数: 0
一、方法
-
方法概述
方法是用于封装特定功能的代码块
-
1.方法格式
修饰符 返回值类型 方法名(参数类型 参数名...){
方法体;
return 返回值;
}
-
2.如何写一个方法:
需要根据需求明确返回值类型和参数列表
参数列表:
缺什么,你就写什么参数,缺几个你就写几个
返回值类型:
返回值就是需求的结果,结果是什么类型,返回值就是类型
-
3.有返回值的方法
//举例1:求任意两个数的和,调用方法得到结果后,可以用结果做其他操作
public static int getSum(int a,int b){
return a+b;
}
-
4.无返回值的方法
//举例2: 写一个方法,求任意两个数的和,调用方法结果直接输出,不能做其他操作
public static void getSum(int a,int b){
System.out.println(a+b);
}
-
5.有关方法的注意事项
a:方法需要定义在类中
b:方法和方法之间是平级的,不能嵌套定义
c:方法有返回值类型,就必须写return语句
d:方法如果没有返回值,用void表示,可以写return;
e:方法的实际参数和形式参数要一一对应
形式参数:定义在方法()里的参数
实际参数:调用方法时实际传递的参数
-
6.方法的重载
方法名相同,参数列表不同,与返回值无关
public static void show(int a,int b){
}
//参数类型不同
public static void show(int a,byte b){
}
//参数顺序不同
public static void show(byte a,int b){
}
//参数个数不同
public static int show(int a,int b,int c){
return 0;
}
//这个不是重载,和参数名没有关系
public static void show(int x,byte y){
}
二、方法的参数
-
1.方法的参数是基本类型
形式参数的改变不影响实际参数
-
2.方法的参数是引用数据类型
形式参数的改变对实际参数直接影响
三、方法练习
-
1.写一个方法,在控制台打印输出n个HelloWorld
public static void printHelloWorld(int n){
for(int i=0;i<n;i++){
System.out.println("HelloWorld");
}
}
-
2.写一个方法,求两个数的最大值
public static int getMax(int a,int b){
int max=a>b?a:b;
return max;
}
-
3.写一个方法,求三个数的最大值
public static int getMax(int a,int b,int c){
//先求a和b最大值,赋值给max
int max=a>b?a:b;
//再让max和c比较求最大值,重新赋值给max
max=max>c?max:c;
return max;
}
-
4.写一个方法,打印输出所有的水仙花数
public static void printFlower(int a,int b,int c){
//遍历所有的三位数
for(int i=100;i<=999;i++){
int ge=i%10;
int shi=i/10%10;
int bai=i/100%10;
if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){
System.out.println(i);
}
}
}
-
5.写一个方法,求水仙花数的个数
public static int getFlowerCount(int a,int b,int c){
//定义计数器
int count=0;
//遍历所有的三位数
for(int i=100;i<=999;i++){
int ge=i%10;
int shi=i/10%10;
int bai=i/100%10;
if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){
count++;//计数器累加
}
}
return count;
}
-
6.写一个方法,输出数组int[] 中所有的元素
public static void printArray(int[] arr){
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
-
1.写一个方法,按照格式输出数组int[]中所有的元素
// 输出格式如:{1,2,3,4,5}
public static void printArray(int[] arr) {
System.out.print("{");
for (int i = 0; i < arr.length; i++) {
if (i == arr.length - 1) {
// 是最后一个元素
System.out.println(arr[i] + "}");
} else {
// 不是最后一个元素
System.out.print(arr[i] + ",");
}
}
}
-
2.写一个方法,求数组中元素的和
public static int getArraySum(int[] arr) {
//定义求和变量
int sum = 0;
//遍历所有元素
for (int i = 0; i < arr.length; i++) {
//和sum累加
sum += arr[i];
}
return sum;
}
-
3.写一个方法,求数组中元素的平均值
public static int getArrayAvg(int[] arr) {
//求和变量
int sum = 0;
for (int i = 0; i < arr.length; i++) {
//把元素和sum累加
sum += arr[i];
}
//计算平均值
int avg = sum / arr.length;
return avg;
}
-
4.写一个方法,求数组中元素的最大值
public static int getArrayMax(int[] arr) {
//把数组的第一个元素,假设为最大值
int max = arr[0];
//遍历数组中的元素,和max比较
for (int i = 0; i < arr.length; i++) {
//如果元素比max大
if (arr[i] > max) {
max = arr[i];//把大的元素赋值给max
}
}
return max;
}
-
5.写一个方法,求数组中元素的最小值
public static int getArrayMin(int[] arr) {
//把数组的第一个元素,假设为最小值
int min = arr[0];
//遍历数组中的元素,和min比较
for (int i = 0; i < arr.length; i++) {
//如果元素比min大
if (arr[i] < min) {
min = arr[i];//把小的值赋值给min
}
}
return min;
}
-
7.键盘录入若干个元素,保存到数组中,并将数组返回
public static int[] createScannerArray(int length) {
//根据指定的长度,创建一个数组
int[] arr = new int[length];
Scanner sc = new Scanner(System.in);
for (int i = 0; i < arr.length; i++) {
System.out.println("键盘录入第" + (i + 1) + "个整数:");
//把键盘录入的整数,赋值给元素
arr[i] = sc.nextInt();
}
//把填充好数据的数组返回
return arr;
}
-
8.随机生成若干个元素,保存到数组中,并将数组返回
public static int[] createRandomArray(int length, int bounds) {
//根据指定的长度,创建一个数组
int[] arr = new int[length];
//创建随机数对象
Random sc = new Random();
//遍历数组,给元素赋值
for (int i = 0; i < arr.length; i++) {
System.out.println("键盘录入第" + (i + 1) + "个整数:");
//随机生成[0,bounds)范围内的整数,并赋值给元素
arr[i] = sc.nextInt(bounds);
}
//把填充好数据的数组返回
return arr;
}
转载自blog.csdn.net/jeremy_ke/article/details/81076023