Banner——第二阶段考核

简介: Banner——第二阶段考核

有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。

public class Test1 {
    public static void main(String[] args) {
        double n1=1;
        double n2=1;
        double fraction= n1/n2;
        double sum=0;
        for (int i = 0; i < 20 ; i++) {
            double t1 = n1;
            double t2 = n2;
            n1 = t1+t2;
            n2 = t1;
            fraction = n1/n2;
            sum += fraction;
        }
        System.out.println(sum);
    }
}

编写一个应用程序,接受用户输入的一行字符串,判断该字符串是否是回文数?

public class Test2 {
    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        System.out.print("请输入一串字符串:");
        String a = reader.nextLine();
       /* char[] arr1= new char[a.length()];
        for (int i = 0; i < a.length(); i++) {
            arr1[i]=a.charAt(i);
        }*/
        int n=0;
        /** toCharArray() 方法将字符串转换为字符数组。*/
        char []arr1 =a.toCharArray();
        for (int i = 0; i < a.length()/2; i++) {
            if(arr1[i] !=arr1[a.length()-1-i])
            {
                n++;
            }
        }
        if(n==0){
            System.out.println("是回文!");
        }
        else {
            System.out.println("不是回文!");
        }
    }
}

要求:

(1)按照题目所给变量名称、类型和方法名称进行编程,禁 止修改;

(2)编程环境可选,Eclipse或JDK均可

① 图书馆接口(Library)

成员方法:

borrow(),借阅图书

revert(),归还图书

② 图书类(Book)

成员变量:

图书名称(name)String类型

出版社(publisher)String类型

构造方法:

通过形参初始化图书名称(name)和出版社(publisher)

普通方法:

(1)设置getter和setter方法用于获取和设置类中的name变量的值;

(2)重写Equals方法,当且仅当书名(name)和出版社(publisher)均相等时,即为同一本书。

(3)重写toString方法,返回书名(name)和出版社(publisher)的信息,样式如下:

“书名:Java程序设计,出版社:清华大学出版社”

③ 馆藏图书类(CollectionBook),继承自Book类,实现Library接口

成员变量:

图书编号(bNo)String类型

所在书库(stacks)String类型

是否借阅(isBorrow)boolean类型 图书状态为已借阅时,值为true

构造方法:

调用父类构造方法初始化书名(name)和出版社(publisher)信息,然后初始化图书编号(bNo)和线路图书书库(stacks)

普通方法:

(1)实现接口中的borrow方法

如果图书状态为已借阅,则输出“对不起,该图书已借阅”,否则,修改该图书状态为已借阅,输出“借阅成功”

(2)实现接口中的revert方法

如果图书状态是可借阅状态,输出“该图书已归还”,否则,修改图书借阅状态为未借阅,并输出“还书成功”

④ 通过main函数测试

(1)创建两个CollectionBook对象book1和book2,分别输出book1和book2,

并调用其equals方法判断两个对象是否相等

(2)通过键盘输入整数,输入0,则对book1进行借阅,输入1,则对book1进行归还操作

public class Main {
    public static void main(String[] args) {
        CollectionBook book1=new CollectionBook("混元功法","马家出版社","666","书库");
        CollectionBook book2=new CollectionBook("混元功法","马家出版社","777","书库");
        System.out.println(book1.toString());
        System.out.println(book2.toString());
        System.out.println(book1.equals(book2));
        /** (2)通过键盘输入整数,输入0,则对book1进行借阅,
         * 输入1,则对book1进行归还操作*/
        Scanner reader=new Scanner(System.in);
        int a=reader.nextInt();
        if(a==0)
        {
            book1.borrow();
        }
        if(a==1)
        {
            book1.revert();
        }
    }
}
interface Library {
    void  borrow();
    void  revert();
}
class Book {
    protected String name;
    protected String publisher;
    public Book(String name, String publisher) {
        this.name = name;
        this.publisher = publisher;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        Book book = (Book) o;
        return Objects.equals(name, book.name) &&
                Objects.equals(publisher, book.publisher);
    }
    @Override
    public String toString() {
        return "Book{" +
                "书名:" + name + '\'' +
                ", 出版社:" + publisher + '\'' +
                '}';
    }
}
class CollectionBook extends Book implements Library {
    String bNo;
    String stacks;
    boolean isBorrow;
    public CollectionBook(String name, String publisher, String bNo, String stacks) {
        super(name, publisher);
        this.bNo = bNo;
        this.stacks = stacks;
    }
    @Override
    public void borrow() {
        if (isBorrow){
            System.out.println("对不起,该图书已借阅");
        }else {
            isBorrow=true;
            System.out.println("借阅成功");
        }
    }
    @Override
    public void revert() {
        if(!isBorrow){
            System.out.println("该图书已归还");
        }else {
            isBorrow=false;
            System.out.println("还书成功");
        }
    }
}
相关文章
|
5月前
|
XML 移动开发 前端开发
基于若依的ruoyi-nbcio流程管理系统里修正仿钉钉流程部门主管与多实例转xml的bug
基于若依的ruoyi-nbcio流程管理系统里修正仿钉钉流程部门主管与多实例转xml的bug
41 1
|
Shell 开发工具 Android开发
老板叫我写个APP自动化--准备阶段--01
老板叫我写个APP自动化--准备阶段--01
90 0
老板叫我写个APP自动化--准备阶段--01
|
5月前
|
JSON 数据格式
仿造问卷星--开发一套调查问卷设计工具(3/3)--完整流程
仿造问卷星--开发一套调查问卷设计工具(3/3)--完整流程
77 0
|
5月前
|
JSON JavaScript 前端开发
仿造问卷星--开发一套调查问卷设计工具(1/3)--完整流程
仿造问卷星--开发一套调查问卷设计工具(1/3)--完整流程
84 0
书城第七阶段补充
书城第七阶段补充
36 0
Banner——第一阶段考核
Banner——第一阶段考核
72 0
Banner——第一阶段考核
|
前端开发 Java API
BannerStudio---第四阶段考核项目(一)
BannerStudio---第四阶段考核项目
BannerStudio---第四阶段考核项目(一)
|
前端开发 Java 数据库连接
Banner——第五阶段考核——购物系统
Banner——第五阶段考核——购物系统
81 0