(一)、方法:
1.什么是方法:
Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段.
方法是程序中最小的内存单位.
2.方法的作用:
b. 方法包含于类或对象中
c. 方法在程序中被创建,在其他地方被引用
3.方法的命名规则:
首字母小写,如果名称由多个单词组成,从第二个单词的开始首字母大写
4.设计方法的原则:
方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就是一个方法只完成1个功能,这样利于我们后期的扩展。
5.java方法的定义:
Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段,一般情况下一个方法包含以下语法:
1).修饰符:这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。
2).返回值类型:方法可能会返回值。没有返回值returnValueType是关键字void。
3).方法名:是方法的**实际名称,**方法名和参数表共同构成方法签名。
4).参数类型:参数像是一个占位符。当方法被调用时,传递给参数,这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。
6.方法的格式:
修饰符 返回值类型 方法名 (参数类型 参数名)
{
方法体 //打包的内容
return 返回值‘
}
7.方法的调用:
调用方法: 方法名(实参列表)
(一) 、Java支持两种调用方法的方式,根据方法是否返回值来选择。
1)当方法返回一个值的时候,方法调用通常被当做一个值,例如:
int larger=max(30,40);
System.out.println()
8.方法调用的基本内存原理
因为方法是一个函数,没有new关键字,所以就只有栈.
每一个方法,也就是一个内存。比如说先调用主函数,然后在调用引用函数.(遵循先进先出的原则
比如说子弹装枪)
9.基本数据类型与引用数据类型
1.基本数据类型:数据是储存在自己的空间中.
特点:赋值给其他变量,也是赋的真实的值.
常用的基本数据类型:
int a=10; b=a;
图解:
2.引用数据类型:数据值是存储在其他空间中,自己空间中存储的是地址值.
常用的引用数据类型:
数组名 通过索引取值========================= 数组名
图解:
1.(值传递:形参改变实参不变)
代码展示:
package test; // 包名
import java.util.Scanner;
public class test1 { //项目名
public static void change(int number)
{
number=100;
}
public static void main(String []avgs)
{
int number=20;
System.out.println("调用前:"+number);
change(number);
System.out.println("调用后:"+number);
}
}
代码展示:
2.(引用传递:行参改变实参也改变)
代码展示:
package test; // 包名
import java.util.Scanner;
public class test1 { //项目名
public static void change(int number[])
{
number[0]=100;
}
public static void main(String []avgs)
{
int number[]=new int[] {10,20,30};
change(number); //传递地址,引用
System.out.println(number[0]);
}
}
效果展示:
(二)方法的用法:
1.无返回值的类型
代码展示:
package test; // 包名
public class test1 { //项目名
public static void playGame()
{
System.out.println("开始");
System.out.println("对线");
System.out.println("崩盘");
System.out.println("骂队友");
System.out.println("失败");
}
public static void main(String []avgs)
{
playGame();
System.out.println("====================");
playGame();
}
}
效果展示:
2.有返回值的类型:
代码展示:
题目描述:求两个整数的和,并返回值
package test; // 包名
import java.util.Scanner;
public class test1 { //项目名
public static int playGame(int number1,int number2)
{
int sum=0;
sum=number1+number2;
return sum;
}
public static void main(String []avgs)
{
int number1,number2;
System.out.println("请您输入两个数字:");
Scanner sc=new Scanner(System.in);
number1=sc.nextInt();
number2=sc.nextInt();
System.out.println("两者的和为\n:"+playGame(number1,number2));
}
}
效果展示:
3.利用方法的知识,把数组1复制到数组2;
代码展示:
package test; // 包名
import java.util.Scanner;
public class test1 { //项目名
public static void copMethod(int a[],int start,int end)
{
int arr_number2[]=new int[5];
for(int i=start,index=0;i<=end;i++,index++)
{
arr_number2[i]=a[i];
}
for(int i=0;i<arr_number2.length;i++)
{
System.out.print(" "+arr_number2[i]);
}
}
public static void main(String []args)
{
int arr_number1[]=new int[5];
Scanner sc=new Scanner(System.in);
for(int i=0;i<arr_number1.length;i++)
{
arr_number1[i]=sc.nextInt();
}
System.out.println("拷贝复制后的数组为:");
copMethod(arr_number1,2,4);
}
}
4.判断一个范围内的素数:
代码展示:
package test; // 包名
import java.util.Scanner;
public class test1 { //项目名
static int count=0; // 定义全局变量,只为了求个数
public static void change(int number)
{
boolean flag=true;
for(int i=2;i<number/2;i++)
{
if(number%i==0) //如果不是素数
{
flag=false;
break;
}
}
if(flag) //注意这里省略了 !=0
{
++count;
System.out.println(number+" "+count);
}
}
public static void main(String []avgs)
{
for(int i=101;i<200;i++)
{
change(i);
}
}
}
效果展示:
5.从一个整数中获得提取成数组:
题目描述: 我们已经知道一个整数123456,把整数123456,首先我们通过/ 进行得到个数,然后再通过%得到个位,然后定义一个动态数组,把这个动态数组进行赋值.
代码展示:
package test; // 包名
import java.util.Random;
public class test1 { //项目名
public static void main(String []avgs)
{
int number=123456;
int temp=number;
int count=0;
while(number!=0)
{
number=number/10;
count++;
}
int arr_number[]=new int[6];
System.out.println(count);
while(count>0)
{
int gw=temp%10;
arr_number[count-1]=gw;
temp=temp/10;
count--;
}
for(int i=0;i<6;i++)
{
System.out.println(arr_number[i]+"");
}
}
}
效果展示:
如有不懂,可私聊!!!!!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。