有关方法的复习及代码练习-创新互联

方法的定义格式:
修饰符  返回值的数据类型 方法名(参数1,参数2,…,参数n){
语句序列;
return 表达式;

方法的调用格式:直接调用:方法名(实参);
赋值调用:数据类型 变量名=方法名 (实参);
【特殊的方法的定义格式】
public static void 方法名(){
语句序列;

调用格式:方法名();

创新互联公司-专业网站定制、快速模板网站建设、高性价比潜江网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式潜江网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖潜江地区。费用合理售后完善,10多年实体公司更值得信赖。

【注意】1:方法与方法之间是平级关系,不能嵌套定义。
2:方法的编写顺序和执行顺序无关。
3:方法的返回值类型为void (无返回值),方法内则不能使用return返回数据,如果方法的返回值类型写了具体类型,方法内部则必须使用return返回对应类型的数据。
4:return语句下面,不能编写代码,因为永远执行不到,属于无效的代码。
5:方法不调用就不执行。
6:方法中的参数称为形式参数,简称形参。当调用方法时用于接受数据,而传递给方法的值称为实际参数,简称实参,形参用于接收实参。
7:Java的基本类型的参数传递:值传递。
8:在传输实参给方法的形参的时候,并不是传输实参变量本身,而是在传输实参变量中的存储的值,这就是值传递。
9:方法的运行区域在栈内存。
10:基本类型和引用类型的参数在传递的时候
相同点:都是值传递。
不同点:基本类型的参数传输存储的数据值。
引用类型的参数传输存储的地址值。

方法重载:同一个类中,出现多个方法名称相同,但是形参列表是不同的,那么这些方法就是重载方法。与返回值类型无关。
【注意】形参列表不同指的是:形参的个数,类型,顺序不同,不关心形参的名称。

代码练习
1   将数组arr中从索引from(包含from)开始,到索引to(不包含to)的元素复制到新数组中

package com.company;

public class Main {

  public static void main(String[] args) {

int []arr={23,56,78,44,11,29,88,87,};

int []copyarr=GetNewArr(arr,3,7);

for(int i=0;i

  System.out.print(copyarr[i]+" ");

}

  }

  public static int[] GetNewArr(int[]arr,int from,int to){

  int []newarr=new int[to-from];

  int index=0;

  for(int i=from;i

  newarr[index]=arr[i];

  index++;

  }

  return newarr;

  }

}

2  机票价格按照淡季旺季,头等舱和经济舱收费,输入机票原价,月份和头等舱或经济舱。

按照如下规则计算机票价格:旺季(5-10月)头等舱九折,经济舱八点五折,淡季(11月到来年4月)头等舱七折,经济舱六点五折。

package com.company;
import java.util.*;
public class Main {
  public static void main(String[] args) {
  Scanner sc=new Scanner(System.in);
  System.out.println("请输入机票的原价:");
  int ticket=sc.nextInt();
  System.out.println("请输入月份:");
  int month=sc.nextInt();
  System.out.println("请输入座位 0 头等舱 1经济舱");
  int seat=sc.nextInt();
  if(month>=5&&month<=10){
  int newticket=getprice(ticket,seat,0.9,0.85);
  System.out.println("打折后的机票价钱为"+newticket);
  }else if((month>=1&&month<=4)||(month>=11&&month<=12)){
  int newticket=getprice(ticket,seat,0.7,0.65);
  System.out.println("打折后的机票价钱为"+newticket);
  }else {
  System.out.println("输入的月份不合理");
  }
  }
  public static int getprice(int ticket,int seat,double v0,double v1){
  if(seat==0){
  ticket=(int)(ticket*v0);
  }else if(seat==1){
ticket=(int)(ticket*v1);
  }else{
  System.out.println("输入的座位不正确");
  }
  return  ticket;
  }
}

3 在唱歌比赛中,有六名评委给选手打分,分数范围是0~100之间的整数。选手的最后得分为:去掉最高分,最低分后的4个评委的平均分,请完成上述过程并计算出选手的得分

package com.company;
import java.util.*;
public class Main {
  public static void main(String[] args) {
  int[] scoresarr=getscores();
  for(int i=0;i
  System.out.print(scoresarr[i]+" ");
  }
  int max=getMax(scoresarr);
  int min=getMin(scoresarr);
  int sum=getSum(scoresarr);
  int avg=(sum-max-min)/(scoresarr.length-2);
  System.out.println("选手的最终得分为"+avg);
  }
  public static int getSum(int[] scoresarr){
  int sum=0;
  for(int i=0;i
  sum=sum+scoresarr[i];
  }
  return sum;
  }
  //求数组的大值
  public static int getMax(int[] scoresarr){
  int max=scoresarr[0];
  for(int i=1;i
  if(scoresarr[i]>max){
  max=scoresarr[i];
  }
  }
  return max;
  }
  //求数组的最小值
  public static int getMin(int[] scoresarr){
  int min=scoresarr[0];
  for(int i=1;i
  if(scoresarr[i]
  min=scoresarr[i];
  }
  }
  return min;
  }
  //定义一个数组
  public static int[] getscores(){
  int[] scores=new int[6];
  Scanner sc=new Scanner(System.in);
  for(int i=0;i
  System.out.print("请输入评委的打分:");
  int score=sc.nextInt();
  if(score>=0&&score<=100) {
  scores[i] = score;
  i++;
  }else{
  System.out.print("成绩超出了范围,继续录入,当前i的值为"+i);
  }
  }
  return scores;
  }
}

4某系统的数字密码(大于0),比如1983,采用加密方式进行传输。 规则如下:先得到每位数,然后每位数都加上5,再对10求余,最后将所有数字反转,得到一串新数

package com.company;
import java.util.*;
public class Main {
  public static void main(String[] args) {
  int number=1983;
  int temp=number;
  int count=0;
  while(number!=0){
  number=number/10;
  count++;
  }
  int[] arr=new int[count];
  int index=arr.length-1;
  while(temp!=0){
  int ge=temp%10;
  temp=temp/10;
  arr[index]=ge;
  index--;
  }
  for(int i=0;i
  arr[i]=(arr[i]+5)%10;
  }
  for(int i=0,j=arr.length-1;i
  int newtemp=arr[i];
  arr[i]=arr[j];
  arr[j]=newtemp;
  }
  int newnumber=0;
  for(int i=0;i
  newnumber=newnumber*10+arr[i];
  }
  System.out.println("加密之后的数字为 "+newnumber);
  }
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站名称:有关方法的复习及代码练习-创新互联
本文地址:http://scyanting.com/article/pidho.html