1.关于#java#的问题:假设 Sum 类中有一个addContinue(int n)方法(相关搜索:构造方法)
假设 Sum 类中有一个addContinue(int n)方法,当0<n<=20时,方法实现1+2+⋯•+n的和;当n≤=0时,方法抛出一个受检查的 ArgumentException 异常,在异常处理程序中告诉用户异常的原因。AngumentException.类应该提供一个能够接受并保存n值的构造方法,一个能返回n值的实例方法,现定义Sum 类以及 ArgumentException.类,并编程(Test类)测试它们。
package java_11_22;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner s = new Scanner(System.in);
int n = s.nextInt();
try {
System.out.println(Sum.addContinue(n));
} catch (ArgumentException e) {
System.out.println("Invalid argument: " + e.get());
}
}
}
class Sum {
public static int addContinue(int n) throws ArgumentException {
int sumAll = 0;
if (n <= 0) {
throw new ArgumentException(n);
} else if (n > 0 && n <= 20) {
for (int i = 1; i <= n; i++) {
sumAll += i;
}
} else {
return -1;
}
return sumAll;
}
}
@SuppressWarnings("serial")
class ArgumentException extends Exception {
private int n;
public ArgumentException(int n) {
this.n = n;
}
public int get() {
return n;
}
}
情况1:
情况2:
情况3:
2.编写一个程序,将学生信息存储到链表中并输出学生信息,然后将链表中的学生英语成绩单存放到一个树集中,并按照成绩自动排序,输出排序结果。
【思路分析】
(1)使用封装定义学生类,包括姓名和英语成绩,并重写comparable接口方法。
(2)创建10个学生对象,存储到LinkedList集合中,使用迭代器Iteration输出。
(3)把所有学生对象存储到TreeSet集合中,使用迭代器Iteration输出排序信息。
请同学们参考上以描述,编写一个完整程序。
package java_11_22;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.TreeSet;
public class Student implements Comparable<Student> {
private String name;
private int grade;
public Student(String name, int grade) {
super();
this.name = name;
this.grade = grade;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
public static void main(String[] args) {
System.out.println("-------------------LinkedList集合输出-----------------------");
LinkedList<Student> stuList = new LinkedList<Student>();
stuList.add(new Student("s1", 99));
stuList.add(new Student("s2", 89));
stuList.add(new Student("s3", 96));
stuList.add(new Student("s4", 92));
stuList.add(new Student("s5", 69));
Iterator<Student> i = stuList.iterator();
while (i.hasNext()) {
Student student = (Student) i.next();
System.out.println("name:" + student.getName() + " grade:" + student.getGrade());
}
System.out.println("-------------------TreeSet集合排序输出-----------------------");
TreeSet<Student> stuTree = new TreeSet<Student>();
stuTree.add(new Student("t1", 99));
stuTree.add(new Student("t2", 89));
stuTree.add(new Student("t3", 96));
stuTree.add(new Student("t4", 92));
stuTree.add(new Student("t5", 69));
Iterator<Student> j = stuTree.iterator();
while (j.hasNext()) {
Student student = (Student) j.next();
System.out.println("name:" + student.getName() + " grade:" + student.getGrade());
}
}
@Override
public int compareTo(Student o) {
// TODO Auto-generated method stub
return this.grade - o.grade;
}
}
3.java构造方法,求解答学生信息:
1、 创建一个学生信息类,包含:姓名,性别,年龄,爱好。
2、 分别创建无参,带1个参数和带4个参数的构造方法。
3、 创建一个方法,显示学生姓名,性别,年龄,爱好。
4、 创建3个学生信息类的对象,分别用不同的构造方法初始化。显示出学生的各项信息。
package java_11_15;
public class Student {
private String name;
private String sex;
private int age;
private String aihao;
public Student() {
super();
}
public Student(String name) {
super();
this.name = name;
}
public Student(String name, String sex, int age, String aihao) {
super();
this.name = name;
this.sex = sex;
this.age = age;
this.aihao = aihao;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAihao() {
return aihao;
}
public void setAihao(String aihao) {
this.aihao = aihao;
}
public void putMsg() {
System.out.println("名字:" + this.name);
System.out.println("性别:" + this.sex);
System.out.println("年龄:" + this.age);
System.out.println("爱好:" + this.aihao);
}
}
package java_11_15;
public class StudentShow {
public static void main(String[] args) {
// TODO Auto-generated method stub
Student student = new Student();
Student student2 = new Student("zs");
Student student3 = new Student("ls", "女", 20, "游泳");
student.putMsg();
student2.putMsg();
student3.putMsg();
}
}
4.题目:定义一个教师类Teacher, 要求如下:
(a)教师的姓名(name, String类型) 。所授课程(course.Sturing类型)、课时数量(courseNum, int类型 和课时系数(radio, double类型) 、所有教师的课时系数相同。属性均是私有的。
(b)提供-个有参的构造方法(要求包括姓名,所授课程、课时数至)。
(c)为私有属性提供访问器方法。
(d)义一个计算课时当量的courseCompute方法(课时当量=课时量系数)。返回值类型为double.
(e)定义一个计算课时费的moneyCompute0方法(课时费=课时当量钱数、如果当量超过100.每课时30元当量不超过100每课时20元)
要求所有方法都是共有的。
package java_11_12;
public class Teacher {
private String name;
private String course;
private int courseNum;
private double radio;
public Teacher(String name, String course, int courseNum, double radio) {
super();
this.name = name;
this.course = course;
this.courseNum = courseNum;
this.radio = radio;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCourse() {
return course;
}
public void setCourse(String course) {
this.course = course;
}
public int getCourseNum() {
return courseNum;
}
public void setCourseNum(int courseNum) {
this.courseNum = courseNum;
}
public double getRadio() {
return radio;
}
public void setRadio(double radio) {
this.radio = radio;
}
public double courseCompute() {
return radio;
}
public double moneyCompute() {
if (radio > 100) {
return 30 * courseNum;
} else {
return 20 * courseNum;
}
}
}
人生是一场长途旅行,很多梦想的实现,并不是浓缩在一天之内,而是在张弛有度中,慢慢地向目标靠近。积极暗示,自我鼓励;停止攀比,专注自我;放慢节奏,张弛有度…找到适合自己的减压方式,慢慢来,愿你轻装前行,把生活过成自己想要的样子。😉😉😉