-
JavaFormatter类借鉴C语言printf语法,支持宽度、对齐、精度等控制;格式为%indexwidthconversion;flags中-为左对齐、0为数字前导零、空格为正数前加空格、+为强制显符号;Java原生不支持^居中对齐。
-
答案:Deque是Java中支持两端操作的线性集合,ArrayDeque为其高效实现,适用于栈、队列及双端队列场景。
-
Java8中用Stream和Lambda实现笛卡尔积的核心是flatMap+map嵌套:外层流遍历第一个集合,对每个元素用flatMap拉平第二个集合的映射结果,并在map中构造数组、List或DTO;支持任意类型、多集合及自定义对象,需注意空集合、基本类型流转换和内存溢出风险。
-
Java对象关联靠字段引用实现,一对一用单个对象字段,一对多用集合字段,多对多双方均持集合或引入中间实体;getter/setter不建立关联,关键在字段是否真实赋值;依赖、聚合、组合仅语义不同,代码层面均为字段持有。
-
Object类是Java所有类的根父类,核心意义在于统一类型体系、提供基础行为契约、支撑运行时机制:实现“一切皆对象”、定义toString()等关键方法协议、支撑JVM异常处理与泛型擦除等底层功能。
-
Android开发中使用DecimalFormat(".2")无法正确显示小数位,因该模式缺少整数部分占位符;应改用String.format("%.2f",value)或修正DecimalFormat模式为"0.00"。
-
循环展开的核心是精准匹配硬件瓶颈:填满流水线、利用向量单元、打破数据依赖;关键在选对展开因子(通常2/4/8倍),配合restrict、编译提示、尾部处理及软件流水线调度。
-
Gson默认跳过Map中null值,需调用serializeNulls()才能输出null;Jackson对LinkedHashMap顺序无稳定保证,须确保使用LinkedHashMap实例且避免破坏顺序的操作;FastJson2反序列化泛型需TypeReference匿名子类,否则类型擦除导致嵌套LinkedHashMap。
-
枚举类的compareTo()方法通过比较ordinal值实现O(1)自然排序,前提是声明顺序即业务顺序;推荐用Comparator.comparingInt(Status::ordinal)提升可维护性,避免语义冲突。
-
使用Collections.unmodifiableMap()封装静态路由表是最轻量安全的做法,它在初始化阶段创建只读视图防止误修改,但需确保临时map为局部变量;Java9+推荐用Map.copyOf()或Map.of()获得真正不可变副本。
-
使用Properties类读取.properties配置文件,适合键值对存储的场景。2.在src/main/resources下创建config.properties并写入数据库和应用配置。3.通过类加载器获取资源流,用props.load()加载文件内容。4.调用getProperty获取键值,支持默认值设置。5.建议用try-with-resources自动关闭流,注意敏感信息保护,复杂结构可选XML或YAML。
-
Class.newInstance()因绕过访问检查、不支持参数构造器、异常信息模糊而被弃用,JDK9标记为@Deprecated,JDK15起部分模块移除;应改用Constructor.newInstance()并显式调用setAccessible(true)、严格匹配参数类型、解包InvocationTargetException。
-
Java中char是16位UTF-16编码单元,可表示BMP字符(如'中'),但辅助平面字符(如?)需代理对;操作字符串应使用codePointCount、codePoints等API而非charAt/length。
-
布隆过滤器用布尔数组模拟位数组,通过多个哈希函数映射索引实现存在性判断;插入时置对应位为true,查询时需所有k位均为true才判定可能存在,不支持删除。
-
Java反射工具ReflectionUtils以“稳、简、可维护”为核心,封装5类高频操作,统一异常、缓存与类型安全,降低40%耗时,NPE和类型转换异常归零。