首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

2019年Java中高级面试题总结(7),228道系列查漏补缺!

101、Java 中如何将字符串转换为整数? 102、在没有使用临时变量的情况如何交换两个整数变量的值? 103、接口是什么?为什么要使用接口而不是直接使用具体类?...a)不要重载这样的方法:一个方法接收 int 参数,而另个方法接收 Integer 参数。 b)不要重载参数数量一致,而只是参数顺序不同的方法。...c)如果重载的方法参数个数多于 5 个,采用可变参数。 82、在多线程环境下,SimpleDateFormat 是线程安全的吗?...使用SimpleDateFormat来实现格式化日期,但是DateFormat 的所有实现,包括 SimpleDateFormat 都不是线程安全的,因此你不应该在多线程序中使用,除非是在对外线程安全的环境中使用...最后 欢迎大家一起交流,喜欢文章记得关注我点个赞哟,感谢支持!

1.6K00

Java 基础知识点(必知必会其二)

1.如何将数字输出为每三位逗号分隔的格式,例如“1,234,467”?   ...16))+""+(byte)(num>>8))+""+(byte)num+""); 29 } 30 }  对于上面的字节转化为 int 时候,为何要进行&oxff操作,以及如果换成其他语言或者开发系统环境时...上面是将byte[]转化十六进制的字符串,注意这里b[ i ] & 0xFF将一个byte和 0xFF进行了运算,然后使用Integer.toHexString取得了十六进制字符串,可以看出 b[ i...] & 0xFF运算后得出的仍然是个int,那么为何要和 0xFF进行运算呢?...---- Java中的一个byte,其范围是-128~127的,而Integer.toHexString的参数本来是int,如果不进行&0xff,那么当一个byte会转换成int时,对于负数,会做位扩展

2K50

深入理解ThreadLocal:拨开迷雾,探究本质

使用这个工具类可以很简洁地编写出优美的多线程程序,解决共享参数的频繁传递线程安全等问题。...如果开发者掌握了ThreadLocal用法原理,那么使用起来将得心应手,那么请跟随本文的节奏,拨开迷雾,探究本质吧!...接下来我们一起来看看ThreadLocal的第二大使用场景,在使用之前,我们先把两个场景总结如下: 场景1:每个线程需要一个独享的对象,通常是工具类,比如典型的SimpleDateFormat和Random...场景二:如果多个线程中存储不同的信息,为了方便在其他方法里面获取到信息,那么这种场景适合使用set()方法。...软引用和一个引用队列联合使用,如果软引用所引用的对象被回收之后,该引用就会加入到之关联的引用队列中。

26410

深入理解ThreadLocal:拨开迷雾,探究本质

使用这个工具类可以很简洁地编写出优美的多线程程序,解决共享参数的频繁传递线程安全等问题。...如果开发者掌握了ThreadLocal用法原理,那么使用起来将得心应手,那么请跟随本文的节奏,拨开迷雾,探究本质吧!...接下来我们一起来看看ThreadLocal的第二大使用场景,在使用之前,我们先把两个场景总结如下: 场景1:每个线程需要一个独享的对象,通常是工具类,比如典型的SimpleDateFormat和Random...对于ThreadLocalMap,我们一起了解一下其内部的变量: // 默认的数组初始化容量 private static final int INITIAL\_CAPACITY = 16; //...软引用和一个引用队列联合使用,如果软引用所引用的对象被回收之后,该引用就会加入到之关联的引用队列中。

27910

深入理解ThreadLocal:拨开迷雾,探究本质

使用这个工具类可以很简洁地编写出优美的多线程程序,解决共享参数的频繁传递线程安全等问题。...如果开发者掌握了ThreadLocal用法原理,那么使用起来将得心应手,那么请跟随本文的节奏,拨开迷雾,探究本质吧!...接下来我们一起来看看ThreadLocal的第二大使用场景,在使用之前,我们先把两个场景总结如下: - 场景1:每个线程需要一个独享的对象,通常是工具类,比如典型的SimpleDateFormat和Random...对于ThreadLocalMap,我们一起了解一下其内部的变量: ```java // 默认的数组初始化容量 private static final int INITIAL_CAPACITY = 16...软引用和一个引用队列联合使用,如果软引用所引用的对象被回收之后,该引用就会加入到之关联的引用队列中。

22230

ThreadLocal:Java中的影分身

> k, Object v) { super(k); value = v; } } ThreadLocal和线程池一起使用?...ThreadLocal对象的生命周期跟线程的生命周期一样长,那么如果将ThreadLocal对象和线程池一起使用,就可能会遇到这种情况:一个线程的ThreadLocal对象会和其他线程的ThreadLocal...对象串掉,一般不建议将两者一起使用。...} } return invoker.invoke(invocation); } 可以看出,在RPC调用(invoke)的链路上,会先使用请求参数判断当前线程是否刚刚发起过同样参数的调用...(2)在Java开发中的什么场景下使用?(3)ThreadLocal的实现原理是怎样的?(4)开源项目中有哪些案例可以参考?不知道你是否对这几个问题有了一定的了解呢?如果还有疑问,欢迎交流。

36020

JAVA实现Date日期加一天

hi,我是程序员王也,一个资深Java开发工程师,平时十分热衷于技术副业变现和各种搞钱项目的程序员~,如果你也是,可以一起交流交流。 今天我们简单聊聊Java中实现Date日期加一天的问题。...SimpleDateFormat(线程不安全) 在Java中,要实现给Date对象加一天,你可以使用Calendar类来操作日期。...请注意,SimpleDateFormat类是线程不安全的,因此如果你在多线程环境中格式化日期,应该确保线程安全或者使用DateTimeFormatter类(Java 8引入)来替代。...但是,DateTimeFormatter主要用于日期和时间的格式化解析,并不直接提供日期加一天的功能。...然后我们调用plus方法并传入ChronoUnit.DAYS的参数来给日期加一天。最后,我们再次使用DateTimeFormatter来格式化新的日期,并打印出来。

46510

Java时间操作代码实现

OK,本文的主题是java中常用的时间操作,在平时开发过程中经常会使用到这些时间操作类,但是大部分使用都是其他工具包提供的类或者就那么几个常用的方法,对其中的方法也都并没有深入学习。...我们发现只有Date()、Date(long date) 两个方法目前是可以正常使用的,其他的方法都已经被设定为过时,并且都是从jdk1.1开始不推荐使用,而是推荐其他方法(下面学习),所以我们只需要关注这两个方法即可...只是因为Calendar累的概念复杂,牵扯到时区本地化等等,Jdk的实现中使用了成员变量来传递参数,这就造成在多线程的时候会出现错误。...类之间的转换依靠的是SimpleDateFormat; String基本类型之间的转换依靠的是包装类String.valueOf()方法; longDate转换依靠的是Date类提供的构造以及...Calendar类 Date类和SimpleDateFormat类两个往往是一起使用的,但是Calendar这个类主要是进行一些简单的日期计算的。

60630

我,一个10年老程序员,最近才开始用 Java8 新特性

了解决接口的修改现有的实现不兼容的问题。新 interface 的方法可以用default 或 static修饰,这样就可以有方法体,实现类也不必重写此方法。...开始我们也提到,interface 新增default,和static修饰的方法,为了解决接口的修改现有的实现不兼容的问题,并不是为了要替代abstract class。...在其他包中也有函数式接口,其中一些没有@FunctionalInterface 注解,但是只要符合函数式接口的定义就是函数式接口,是否有 @FunctionalInterface注解无关,注解只是在编译时起到强制规范定义的作用...由于它的方法参数都是函数式接口类型,所以一般和 Lambda 配合使用。...方法参数都是函数式接口类型 一个 Stream 只能操作一次,操作完就关闭了,继续使用这个 stream 会报错。

85620

Java基础其它补充知识点

Java API就是Java提供给我们使用的类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用。...我们可以通过查帮助文档来了解Java提供的API如何使用 0.Math类 Math类概述 Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。...4.2.基本介绍 DateFormat 是日期/时间格式化子类的抽象类,它以语言无关的方式格式化并解析日期或时间。 是抽象类,所以使用其子类SimpleDateFormat ?...因为DateFormat是抽象的,所以不能直接使用,得用它的儿子:SimpleDateFormat!! 儿子SimpleDateFormat 类 ?...好了,到此我们已经学会了如何将一个日期对象转换成我们非常熟悉的字符串了,那么如何反转过呢? 日期类练习: l 制作一个工具类。DateUtil l 算一下你来到这个世界多少天?

32530

JavaCV的摄像头实战之三:保存为mp4文件

本篇概览 本文是《JavaCV的摄像头实战》的第三篇,如题,咱们一起实践如何将摄像头的视频内容保存为MP4文件 编码 《JavaCV的摄像头实战之一:基础》一文创建的simple-grab-push工程中已写好父类...AbstractCameraApplication,本篇继续使用该工程,创建子类实现那些抽象方法即可 编码前先回顾父类的基础结构,如下图,粗体是父类定义的各个方法,红色块都是需要子类来实现抽象方法,所以接下来...RECORD_FILE_PATH = "E:\\temp\\202111\\28\\camera-" + new SimpleDateFormat...FrameRecorder类型的成员变量: // 帧录制器 protected FrameRecorder recorder; 然后是初始化操作,可见是FFmpegFrameRecorder的实例化和各项参数设置...releaseOutputResource() throws Exception { recorder.close(); } 至此,将摄像头视频存为mp4文件的功能已开发完成,再写上main方法,注意参数

82430

你真正了解 Java 中的 Date 类吗?以及如何正确使用

今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。  ...三连即是对作者我写作道路上最好的鼓励支持!前言在编程领域中,时间处理是非常重要的一环。Java中的Date类为我们提供了一个方便的方式来处理时间。...在主方法中,首先通过Date类获取当前时间(date),然后使用SimpleDateFormat类将日期格式化为指定格式的字符串(formatter.format(date))。...该类中还引入了Java的日期(Date)类和日期格式化(SimpleDateFormat)类。Date类用于表示日期和时间,SimpleDateFormat类用于将日期格式化为指定格式的字符串。...总结通过本文,我们了解了Java中Date类的基本知识。我们不仅了解了该类的基本概念,还学习了如何使用它处理日期和时间。同时,我们还分析了Date类的优缺点以及其应用场景。

65173
领券