函数的定义
什么是函数?
函数就是定义在类中的具有特定功能的一段独立小程序
函数也称为方法
函数的格式:
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2.......参数类型 形式参数N)
{
执行语句;
return 返回值;
}
· 返回值类型:函数运行后的结果的数据类型
· 参数类型:是形式参数的数据类型
· 形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数
· return:用于结束函数
· 返回值:该值会返回给调用者
1. class Demo6 {
2. //定义一个方法,来存放重复出现的代码, 提高代码的复用性
3. public static int getResult(int x){
4. return x+3*5;
5. }
6. public static void main(String[] args) {
7. //调用方法打印出方法返回的结果
8. System.out.println(getResult(4));
9. }
10. }
函数的应用
两上明确:
· 明确要定义的功能最后的结果是什么?返回值类型----return(void默认return)
· 明确在定义该功能的过程中, 是否需要未知内容参与运算
· 函数的作用:大大提高了代码的复用性
函数的重载
重载的概念:在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者类型不同即可
重载的特点:与返回值类型无关,只看参数列表
重载的好处:方便于阅读,优化了程序设计
数组的定义
概念:同一种类型数据的集合,其实数组就是一个容器
好处:可以自动给数组中的元素从0开始编号,方便操作这些元素
格式1:
元素类型[] 数组名 = new 元素类型[元素个数或数组长度];
示例:int[] arr = new int[5];
for(int a:i) 遍历数组,就和for(int i = 0;i < a.length; i++){} 是一个意思。 |
格式2:
元素类型[] 数组名 = new 元素类型[](注意[]里面不是任何东西,是空的){元素1,元素2.。。。元素n};
int[] arr = new int[]{3,5,7,9};
int[] arr = {3,5,7,9};
//创建空数组时,默认数组内容为0 //int[] arr = new int[];//适用于未知内容的数组 //int[] arr = new int[]{3,5,7,9};//适用于已知内容的数组 //int[] arr = {3,5,7,9}; //System.out.println(arr[0]); |
class Demo01
{
public static void main(String[] args)
{
/*
*
***
*****
*
***
*****
***
*
*****
***
*
三种图形的显示
//正三角形
for(int i=0;i<5;i++)//外循环控制行数
{
for(int k=0;k<4-i;k++)//控制*前面的空格数
{
System.out.print(" ");
}
for(int j=0;j<=2*i;j++)//内循环控制列数
{
System.out.print("*");
}
System.out.println();
}
for(int i=5;i>0;i--)//用i--控制倒过来
{
for(int k=0;k<5-i;k++)//0 1 2 3 4
{
System.out.print(" ");
}
for(int j=0;j<=2*i-1;j++)//9 7 5 3 1
{
System.out.print("*");
}
System.out.println();
}
//菱形
for(int i=-2;i<=2;i++)// -2 -1 0 1 2
{
for(int k=0;k
class Demo02
{
public static void main(String[] args)
{
//菱形
for(int i=-2;i<=2;i++)
{
for(int k=0;k
class Demo03
{
public static void main(String[] args)
{
Add(5,3);
}
//public static void(代表没有返回值 ) Add(int x)
//输出语句一般写在main方法中
//函数调用一般用来返回运算的结果
/*
函数的作用:大大提高了代码的复用性
输出一个矩形,几行几列不确定
1.没有明确结果,没有返回值类型---void
2.是否需要未知内容参与运算,,有,,几行几列不确定
*/
public static void Add(int x,int y)
{
for(int i=0;i
class Demo04
{
public static void main(String[] args)
{
//方法中若没有return(void)的话,不能直接写在输出语句中
System.out.println(rectangle(2,0.2));
}
//矩形的面积
//方法重载:所有的方法都用同一个方法名,通过参数来区分
public static int rectangle(int x,int y)
{
return x*y;
}
public static double rectangle(double x,double y)
{
return x*y;
}
public static double rectangle(int x,double y)
{
return x*y;
}
}
class Demo05
{
public static void main(String[] args)
{
rectangle(3,3);
}
public static void rectangle(int x,int y)
{
for(int i=0;i<x;i++)
{
for(int j=0;j<y;j++)
{
System.out.print("K");
}
System.out.println();
}
}
}
class Demo06
{
public static void main(String[] args)
{
//print99();
print99(7);
}
/*
九九乘法表封装成方法调用
*/
public static void print99()
{
print99(9);
}
public static void print99(int x)
{
for(int i=1;i<=x;i++)
{
for(int j=1;j<=i;j++)
{
System.out.print(i+"*"+j+"="+i*j+"\t");//制表格符\t 横向行
}
System.out.println();
}
}
}
class Demo07
{
public static void main(String[] args)
{
System.out.println(reg_per(5,4));
System.out.println(reg_area(5,4));
System.out.println(reg_vol(5,4,3));
}
public static int reg_per(int x,int y)
{
return (x+y)*2;
}
public static int reg_area(int x,int y)
{
return x*y;
}
public static int reg_vol(int x,int y,int z)
{
return reg_area(x,y)*z;
}
}
class Demo08
{
public static void main(String[] args)
{
System.out.println(Add(3,3));
System.out.println(Add("hhhh","AAAAA"));
}
public static int Add(int x,int y)
{
return x+y;
}
public static String Add(String x,String y)
{
return x+y;
}
}
class Demo09
{
public static void main(String[] args)
{
int[] a=new int[100];
for(int i=0;i<=99;i++)
{
a[i]=i;//数据的赋值
}
for (int j=0;j<a.length ;j++ )//数组的取值(打印数组中的元素)
{
System.out.print(a[j]+" ");
}
}
}
class Demo10
{
public static void main(String[] args)
{
//求50以内的奇数,用数组的方式
/*
1.先找到50以内的奇数
2.创建一个数组
3.把奇数存到数组中去
4.把数组中的奇数打印出来
*/
int[] num=new int[50];
int count = 0;//计数器
for (int i=0;i<50 ;i++ )
{
if(i%2!=0)
{
num[count]=i;//不能创建数组在循环内,
count++;//这就会导致每循环一次创建一次数组
}
}
for (int j=0;j<25;j++ )
{
//先判断是否为50以内的奇数并且不为0,最后打印出奇数
if(num[j]!=0)
{
System.out.print(num[j]+" ");
}
}
}
}
class Demo11
{
public static void main(String[] args)
{
/*
1.先找到50以内的奇数
2.再创建一个数组
3.把查找到的奇数存到数组内(需要一个计数器)
4.打印出查找到的数组(注意判断打印出的数组是否为0,需要一个判断结构)
*/
int[] num=new int[50];//2
int count=0;
for (int i=0;i<50 ;i++ )
{
if (i%2!=0)//1
{
num[count]=i;//3
count++;
//奇数
}
}
for (int j=0;j<25 ;j++ )//4
{
if (num[j]!=0)
{
System.out.print(num[j]+" ");
}
}
}
}
class Demo12
{
//插入排序
public static void main(String[] args)
{
int[] num={4,3,1,8,5};
Sort(num);
}
public static void Sort(int[] x)
{
for(int j=0;j<x.length;j++)
{
for(int i=j;i>0;i--)
{
if (x[i]<x[i-1])
{
int temp=x[i];
x[i]=x[i-1];
x[i-1]=temp;
}
}
}
for (int k=0;k<x.length ;k++ )
{
System.out.print(x[k]+" ");
}
}
}