宁武皇仁光九年锦文轩刻本《异闻录》载: 扶桑画师浅溪,居泰安,喜绘鲤。院前一方荷塘,锦鲤游曳,溪常与嬉戏。 其时正武德之乱,潘镇割据,战事频仍,魑魅魍魉,肆逆于道。兵戈逼泰安,街邻皆逃亡,独溪不舍锦鲤,未去。 是夜,院室倏火。有人入火护溪,言其本鲤中妖,欲取溪命,却生情愫,遂不忍为之。翌日天明,火势渐歇,人已不见。 溪始觉如梦,奔塘边,但见池水干涸,莲叶皆枯,塘中鲤亦不知所踪。 自始至终,未辨眉目,只记襟上层迭莲华,其色魅惑,似血着泪。 后有青岩居士闻之,叹曰:魑祟动情,必作灰飞。犹蛾之投火耳,非愚,乃命数也。 ————《锦鲤抄》

【安硕信息21-笔试回忆总结】

方向:java开发

大题两道,一道约瑟夫环问题,一道集合题  小题25道,单选

1.银行员工排队,从1开始按顺序排列,数字为3的人进行报告然后退场,举例:ABCDEFGH,先是C,C退场后,DEF对应123,所以第二个退场的是F,还剩ABDEGH,GHA对应123,所以A退场,.....,全部退场顺序为C,F,A,E,B,H,D,G  ,换成数字就是12345678,退场顺序是3,6,1,5,2,8,4,7

参考:https://blog.csdn.net/qq_21150865/article/details/60467166

package list;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

//约瑟夫环问题
public class report3 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入总人数:");
        int totalNum = scanner.nextInt();
        System.out.print("请输入需要报数的序号:");
        int cycleNum = scanner.nextInt();
        yF(totalNum, cycleNum);
        scanner.close();
        Integer l1 = 3;

    }

    public static void yF(int totalNum, int countNum) {
        // 初始化人数
        List<Integer> list = new ArrayList<Integer>();
        for (int i = 1; i <= totalNum; i++) {
            list.add(i);
        }
        // 从第K个开始计数
        int k = 0;
        while (list.size() > 0) {//和数组的length属性不同,list集合使用size作为长度,或者说元素个数
            k = k + countNum;
            // 第m人的索引位置
            k = k % (list.size()) - 1;//获得其位置的下标
            // 判断是否到队尾
            if (k < 0) {
                //System.out.println(list.get(list.size() - 1));
                list.remove(list.size() - 1);
                k = 0;
            } else {
                //System.out.println(list.get(k));
                list.remove(k);
            }
            if(list.size()==1){

                System.out.println(list.get(0));
            }
        }
        //return 0;
    }
}

 

2.集合

2.1编写一个Person类,

添加数据:Ming ,38 

     Hong,25

    Bai ,43

2.2List存储,并按年龄升序排列

package list;

public class Person implements Comparable<Person>{

    String name;
    int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }




    @Override
    public int compareTo(Person person) {
        /*按员工年龄正序排序*/
        //return this.getEname().compareTo(emp.getEname());
        /*按员工年龄逆序排序*/
        return (this.getAge())  -  person.getAge() ;
    }
}

 

package list;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class listTest {

    public static void main(String[] args) {
        List<Person> list = new ArrayList<Person>();

        list.add(new Person("Ming",38));
        list.add(new Person("Hong",25));
        list.add(new Person("Bai",28));
        Collections.sort(list);
        System.out.println(list.toString());
    }
}

 

2.3修改程序使得输出 Ming  (总感觉在绕圈子,我可能有地方记错了,仅供参考)

   题目提供附加程序段:

  

        Map<Person,String> map = new HashMap<>();
        for (Person p: list) {
            map.put(p,p.getName());
            System.out.println(map.get(new Person("Ming",38)));
        }

 

 直接添加代码后后运行会输出null

修改了一下最后大概是这个样子,
package list;

import hashmapTest.Student;

import java.util.*;

public class listTest {

    public static void main(String[] args) {
        List<Person> list = new ArrayList<Person>();

        list.add(new Person("Ming",38));
        list.add(new Person("Hong",25));
        list.add(new Person("Bai",28));
        Collections.sort(list);//排序
        System.out.println(list.toString());


        Map<Person,String> map = new HashMap<>();
        for (Person p: list) {
            map.put(p,p.getName());
            // System.out.println(map.get(new Person("Ming",38)));
        }
        Collection<Person> set=map.keySet();
        for (Person p: set) {
            String ss = map.get(p);
            if(p.getName().equals("Ming")) {
                System.out.println("---" + p.getName() + "---");
            }
        }
       // String value = map.get("Ming");
       // System.out.println(value);

    }
}

yysy最后一问我没看明白他想考啥...为了输出而输出吗。。

手机答题界面所有代码都缩在一起,可读性很差,当然也可能是我记错题了,所以最后一小问请忽视吧orz

 

3.小题

  普遍比较基础,逻辑与的短路问题,i++和++i,byte进位问题,类和接口是否能多继承之类的

  印象比较深的有:

    3.1 下列哪一个方法不属于Obiect类:

      A:finalize()  B:equals()  C:clone()  D:synchronized

    选D,D是个关键字不是方法

    3.2j ava异常抛出问题:

      非runtime异常必须捕获或抛出,比如SQLException

    3.3 在 html5 中,哪个属性用于规定输入字段是必填的

      required:<input type="text" name="usr_name" required="required" />,这样的话 如果文本框有未填写提交时会弹窗提醒

    3.4 html5废弃的标签:<frameset> <frame> <noframes>等

    3.5 数组和集合的区别

    3.6 Socket,serverSocket创建TCP服务器端这类问题

    3.7 byte长度以及另一道字符串contains方法放一起来说吧

public class test1 {
    public static void main(String[] args) {
        String a = "";
        String b= "Asme";
        if((b.contains(a))){
            System.out.println(2);//2
        };
    byte a1=127;
    byte b1=a1++;
    byte c1 = ++a1;
        System.out.println(b1+c1);//0
    }
}

注意byte长度就好,-128~127

  剩下的没啥印象了,卷卷人太难了,溜了溜了

posted @ 2021-03-17 11:50  哒布溜  阅读(776)  评论(0编辑  收藏  举报