2024年java基础面试题和笔试题

java基础面试题和笔试题一 面试题 基础知识点 1 集合 Collection Map Collection 与 Collections Collection 是所有集合类的根接口 Collections 是提供集合操作的工具类 集合类和数组不同 数组元素可以为基本数据类型值 对象引用 集合元素只能为对象引用 Java 的集合类由 Collection 接口和 Map 接口派生 Set 代表无序集合 无序不可重复

大家好,我是讯享网,很高兴认识大家。



一、面试题(基础知识点)

1,集合

Collection

Map
Collection与Collections,
集合类和数组不同,
Java的集合类由Collection接口和Map接口派生,

Set代表无序集合,无序不可重复;
List代表有序集合,有序可重复;
Map集合存储键值对;

简介

对比如下:


对比关系

2,树的遍历

  1. 先序遍历:每到一层,先记录根节点,然后遍历左子树,再遍历右子树;
  2. 中序遍历:先遍历左子树,当到达叶节点时,记录该结点,然后记录其父节点,然后是右节点;
  3. 后序遍历:先遍历左子树,然后记录左边叶节点,右边叶节点,然后是父节点。

4.层序遍历 :层序遍历就是按照二叉树的层次由上到下的进行遍历,每一层要求访问的顺序为从左到右。

3,什么是IoC和DI?DI是如何实现的?

详解可参考:https://blog.csdn.net/javazejian/article/details/

控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象,是容器在对象初始化时不等对象请求就主动将依赖传递给它。通过IOC反转控制DI依赖注入完成各个层之间的注入,使得层与层之间实现完全脱耦,增加运行效率利于维护。

IOC 与依赖注入的区别
IOC:控制反转:将对象的创建权,由Spring管理.
DI(依赖注入):在Spring创建对象的过程中,把对象依赖的属性注入到类中。

Spring依赖注入(DI)的三种方式,分别为:
1. 注解注入
2. Setter方法注入
3. 构造方法注入

4,各种排序的稳定性,时间复杂度和空间复杂度总结:

内部排序算法

5,Java的内存回收机制

6,Volatile

二、笔试题

1,在JAVA中怎样求二维数组的行数和列数

object [][] array ;
array.length 就是行数
array [0].length 就是列数

2,字符替换

 
讯享网 

3,输入一个链表,从尾到头打印链表每个节点的值。(利用Stack来实现)

讯享网

4,Java中的Arrays.copyOfRange()方法

要使用这个方法,首先要import java.util.*;
Arrays.copyOfRange(T[ ] original,int from,int to)
将一个原始的数组original,从小标from开始复制,复制到小标to,生成一个新的数组。
注意这里包括下标from,不包括下标to。

5,输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。

例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。

 

不能通过先序遍历和后序遍历得到唯一中序遍历。

6,java.util.Scanner类

讯享网

delimiter() 返回此 Scanner 当前正在用于匹配分隔符的 Pattern。
hasNext() 判断扫描器中当前扫描位置后是否还存在下一段。
hasNextLine() 如果在此扫描器的输入中存在另一行,则返回 true。
next() 查找并返回来自此扫描器的下一个完整标记。
nextLine() 此扫描器执行当前行,并返回跳过的输入信息。

7,输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

 

重点在于java的取反操作(~n)和二进制转换函数Integer.toBinaryString()。

后来补充:

Integer.toBinaryString(-5)可直接返回-5的补码。n<0时,~(-n)+1 = n。所以原文的转换有多余操作。

8,java运算符

JAVA中位运算符:

 

8,Java虚拟机类加载机制


                    
小讯
上一篇 2024-12-28 22:35
下一篇 2024-12-25 08:24

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/8685.html