java可变参数例子:求学生成绩信息,不确定课程数

可变参数特点:

1)...只能出现在参数列表的最后
2)...位于变量类型和变量名之间
3)调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数

//可变参数也可用数组来解决这个问题

package Test;

public class Student {
    private int []score; //各科成绩
    private int scoreCount=0; //总课程数

    //构造函数
    Student(int id,String name,int...is){
        //这里实现可变&--函数没用ID和name ,这里只是表示下是个学生
        scoreCount=is.length;//得到传入的可变参数的大小,可以看做是“数组"
        score=new int[scoreCount];//赋予课程数
        for(int i=0;i<scoreCount;i++){
            score[i]=is[i];
        }
    }

    //课程平均成绩
     int avg(){
        int avg=0;
        for(int i=0;i<scoreCount;i++){
            avg+=score[i];
        }
        avg/=scoreCount;
        return avg;
    }

    //课程总和
     int sum(){
        int sum=0;
        for(int i=0;i<scoreCount;i++){
            sum+=score[i];
        }
        return sum;
    }

    //main函数测试
    public static void main(String[] args) {
        Student stu1=new Student(101,"zhangsan",60,61,59,60,61,59);
        Student stu2=new Student(102,"lisi",60,61,59);
        System.out.println("学生1课程平均分:"+stu1.avg());
        System.out.println("学生2课程平均分:"+stu2.avg());
    }
}

  

时间: 2024-08-24 08:12:38

java可变参数例子:求学生成绩信息,不确定课程数的相关文章

Java 可变参数

可变参数 可变参数可以当成一个数组使用 public void sum(int ...nums){ int sum = 0; for(int i:nums) { sum +=i; } System.out.println(sum); } @Test public void testSum() { sum(1,2,3,4,5); } 可变参数的实参可以是数组(同上) @Test public void testSum() { int arr[] ={1,2,3,4,5}; sum(arr); }

【Simple Java】Java可变参数举例

什么是Java可变参数 可变参数是Java 1.5引入的一个特性,它允许一个方法接受任意数量的参数. package simplejava; public class Q25 { public static void print(String... s) { for (String a : s) System.out.println(a); } public static void main(String[] args) { print("a"); print("a"

JAVA 数组实例-求学生成绩的最大成绩,获取数组中的最大值、最小值

实例: import java.util.*; //求学生最大成绩 public class Test{ public static void main(String[] args){ System.out.println("=======求学生最大成绩========="); Scanner in = new Scanner(System.in); int[] arr = new int[5]; //获取用户输入的每个学生的成绩 for(int i=0;i<arr.length

java可变参数总结

今天总结一下java中可变参数这个知识点.还是来看一个例子,现在我想写个方法来计算两个整形的和并且输出,这个方法很简单: public class KeBian { public static void main(String[] args) { sum(5,9); } public static void sum(int a,int b) { int sum = a+b; System.out.println(sum); } } 代码很简单,没有难点,现在我想多加一个数,求三个整数的和并且输出

java可变参数

Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持有一个可变参数.因为参数个数不定,所以当其后边还有相同类型参数时,java无法区分传入的参数属于前一个可变参数还是后边的参数,所以只能让可变参数位于最后一项. 可变参数的特点: (1)只能出现在参数列表的最后: (2)...位于变量类型和变量名之间,前后有无空格都可以: (3)调用可变参数的方法时,

IO流的练习4 —— 键盘录入学生成绩信息,进行排序后存入文本中

需求: 键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件 分析: A:创建学生类 B:创建集合对象 TreeSet<Student> C:键盘录入学生信息存储到集合 D:遍历集合,把数据写到文本文件 首先创建个学生类 1 package zl_Test; 2 /** 3 * 这是个记录学生成绩类 4 * @author LZL 5 * 6 */ 7 public class Student { 8 private String name; 9 priva

JAVA 语法基础综合练习——学生成绩管理系统

代码如下:package com.lovo.manager; import java.util.Scanner; /** * 学生管理 * * @author Administrator * */ public class StudentManager { public static void main(String[] args) { String[] user = new String[10]; int[] password = new int[10]; while (true) { //

Java 可变参数列表

1.可变参数列表的简单实现 当调用方法时,方法的参数个数或类型未知时,称其为可变参数列表.在以前的Java代码中,可以使用Object数组来实现这样的功能.因为,所有的类都是直接或间接继承于Object类. VarArgs.java package sample; class A1{} public class VarArgs { static void printArray(Object[] args){ for(Object obj:args) System.out.print(obj+"

java可变参数特性

可变参数:将要操作的元素作为参数传递,隐式将参数封装为数组 public static void main(String[] args) { show(1,2); show(); show1("java",1,2,3); //顺序不能变 } public static void show(int... arr) { System.out.println(arr.length); //数组长度 } public static void show1(String str,int... ar