编程面试题

  • Java 11中是否有垃圾回收JVM args的替代品?

    您的清单arguments, current mapping, reasons如下: -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps == decoration options -Xlog:::time,level,tags

  • 从Java中的二维数组流

    假设您要以行优先的方式顺序处理数组的数组,这应该可以工作: int[][] arr = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; IntStream stream = Arrays.streamarr.flatMapToIntx - Arrays.streamx; 首先,它调用a href="http:docs.ora

  • Statement.executeUpdate()返回-1是什么意思?

    因此4年后,Microsoft在Github上开源了他们的JDBC驱动程序。我今天有一个关于这个问题的通知,并去了,一看,我相信我已经找到了罪魁祸首a href="https:github.comMicrosoftmssql- jdbcblobcfba660ac950a14da127cb9399430425473fb46f

  • 替换所有不在范围内的字符(Java字符串)

    解释一下:字符类开头的^将使该类取反,但必须在类内部才能起作用。字符类外部的相同字符是字符串行开头的锚点。 您可以尝试以下方法: "[^0-9]"

  • 不建议使用httpClient.getConnectionManager()-应该改用什么?

    不用创建的新实例,而是HttpClient使用Builder。你会得到一个CloseableHttpClient。 例如用法: CloseableHttpClient httpClient = HttpClientBuilder.create.setProxyproxy.build 而不是使用

  • Android 4.4 WebView文件选择器无法打开?

    WebView正常工作 如果我正确理解以上链接的内容,则您(我以及可能还有数百名开发人员)正在寻找黑客手段

  • Java-字符串替换确切的单词

    使用带有单词边界 的正则表达式\b: String s = "axe pickaxe"; System.out.printlns.replaceAll"\\baxe\\b", "sword";

  • log4j在哪里/如何查找log4j.properties文件?

    啊 我发现问题是eclipse导入了错误的Logger类。它导入了java.util.logging.Logger,它当然具有与log4j不同的自己的配置。哦,很好,希望其他人可以这样做并通过阅读此问题将其解决。

  • Enum.valueOf(String)方法从何而来?

    该方法由编译器隐式定义。 从文档中: 请注意,对于特定的枚举类型T,可以使用对该枚举上隐式声明的公共静态T valueOf(String)方法来代替此方法,以从名称映射到相应的枚举常量。可以通过调用该类型的隐式公共静态T [] values()方法来获取枚举类型的所有常量。 根据a href="h

  • 更改DecimalFormat语言环境

    您可以尝试先转换为NumberFormat,然后将其投射到DecimalFormat Integer vc = 3210000; NumberFormat nf = NumberFormat.getNumberInstanceLocale.US; DecimalFormat formatter = DecimalFormat nf; formatter.

  • JavaMail中的错误:PKIX路径构建失败,无法找到请求的目标的有效证书路径

    好的问题解决了! 解决方案是这样的: 首先通过openssl从邮件服务器获取自签名证书: echo | openssl s_client -connect yoursever:port 21 | sed -ne '-BEGIN CERTIFICATE-,-END CERTIFICATE-p' yourcert

  • 排序Java ArrayList的一部分

    Collections.sortlist.subList0,3; Note: '3' here is excluded from sorting 在文档中对此进行了描述:

  • java使用值字符串创建日期对象

    每当您要将String转换为Date对象时,SimpleDateFormat#parse 请使用尝试使用 String dateInString = new java.text.SimpleDateFormat"EEEE, ddMMyyyyhh:mm:ss" .formatcal.getTime SimpleDateFormat for

  • @PreAuthorize批注在Spring Security中不起作用

    你应该有 s:global-method-security pre-post-annotations="enabled" 如果您希望@PreAuthorize注释起作用。 回答评论: 看来您缺少spring-aop依赖性。 如果您正在使用M

  • ExecuteBatch方法在Java中返回值-2的数组

    关于批处理更新的返回码,jdbc-spec有以下说法: ■0或更大-命令已成功处理,值是一个更新计数,指示受命令执行影响的数据库中的行数第14章批更新121 ■Statement.SUCCESS_NO_INFO-命令已成功处理,但受影响的行数未知 Statement.SUCCESS_NO_INFO被定义为-2,因此您的结果表明一

  • 剖析Java应用程序中内存使用情况的最佳方法?

    使用JProfiler之类的东西,您要做的就是向JVM添加某些参数。它使用JVMTI。 我认为您应该阅读分析器,以及他们可以为您做些什么。我还建议阅读JVMTI。 JVMTM工具接口(JVM TI)是供工具使用的新的本机编程接口。它提供了一种检查状态并控制Java虚拟机(JVM)中运行的应用程序执行的方式。JVM TI支持需要访问JVM状态的全部工具,包括但不限于:性能分析,调试,监视,线程分析和覆盖率

  • Java中的所有方法是否隐式都是虚拟的

    所有非static,非final和非private法中默认Java虚拟。但是,JVM非常聪明,可以找到仅具有给定方法的一种实现的类并将其转换为静态绑定。 这样,您就不必记住virtual关键字(由于virtualC ++中的析构函数丢失而导致内存泄漏吗?),而性能并没有受到太大的影响。

  • SecureRandom:是否需要一次或每次初始化?

    与java.util.Random类不同,java.security.SecureRandom该类必须在每次调用时产生不确定的输出。 这意味着,对于java.util.Random,如果您每次需要一个新的随机数时都使用相同的种子重新创建一个实例,则基本上每次都将获得 相同的 结果。但是,SecureRandom

  • 如何减少Scala(/ Java)启动开销?

    您正在使用哪种计算机?显然会有JVM启动开销,但是如果JVM检测到您正在服务器级计算机上运行,则开销会更大。 在J2SE平台版本5.0中,一类称为服务器类计算机的计算机已定义为具有以下条件的计算机: 2个或更多物理处理器

  • System.currenTimeInMillis()与System.nanoTime()

    在这种情况下,我发现以下博客摘录很有用: 如果您对 测量绝对时间 感兴趣,请始终使用 System.currentTimeMillis。请注意,它的分辨率可能非常粗糙(尽管在绝对时期这很少有问题。) 如果您对 测量计算经过时间 感兴趣,请始终使用code

  • 用Java模拟URL

    当我有一个因为是终结类(或用C#密封)而无法轻易嘲笑的类时,我通常的方法是在该类周围编写包装器,并在可能使用实际类的地方使用该包装器。然后,如有必要,我将模拟包装器类。

  • 何时在API中使用CharSequence

    CharSequence在通用库中很少使用。通常在主要用例是字符串处理(操作,解析等)时使用。 一般来说 ,你可以做一个东西CharSequence,你可以用做String

  • JPA:用于处理OptimisticLockException的模式

    如果收到乐观的锁定异常,则意味着其他某个事务已将更改 提交 给您尝试更新删除的实体。由于其他事务已提交,因此立即重试可能会成功。 我还会使方法在N次尝试后失败,而不是等待StackOverflowException发生。

  • 如何使用cURL登录到Spring Security登录表单?

    cURL像这样使用: curl -d j_username=admin -d j_password=admin -L http:localhost:8080appj_spring_security_check CSRF 如果得到类似的信息Expected CSRF token not found. Has

  • Java流排序2变量升序/降序

    在第一个示例中,reversed将其应用于整个比较器,该比较器按升序比较seq1和seq2。 您需要的是仅反转第二个比较,例如,可以使用以下方法完成: import static java.util.Collections.reverseOrder; import static java.util.Comparator.comparing; list = list.s

  • 带有改进的并行HTTP请求

    改造使用Executor来对请求进行排队。 默认使用Executors.newCachedThreadPool允许无限线程。这适合大多数用例,因为通常您一次只会发生一个或两个请求。 但是,您可以通过在构建时自行提供来更改此行为RestAdapter。调用a href="http:square.github.ioretrofit

  • 序列化期间Java的堆空间不足

    是objOS的ObjectOutputStream? 如果是这样,那就是您的问题:An ObjectOutputStream会对曾经写入过的 每个 对象保持强大的引用,以避免重复写入同一对象(它只会写一个引用说“我之前用id x 编写过的那个对象”) )。 这意味着您实际上在泄漏

  • 获取Web服务客户端的IP地址

    那这个呢: @WebService public class MyService { @Resource WebServiceContext wsContext; ** * Web service operation * @WebMethod public String myMethod { MessageContext mc = wsContext.ge

  • 如何从HttpURLConnection读取完整响应?

    无法直接使用来转储完整的HTTP响应HttpURLConnection,但是您可以使用其各种方法来重构它。例如, HttpURLConnection httpURLConnection; URL url = new URL"http:www.google.com"; httpURLConnection = HttpURLConnection url.openConnectio

  • 如何将Joda Time DateTime对象转换为SQL Server格式的字符串?

    java.sql.Timestamp与一起使用a href="http:docs.oracle.comjavase6docsapijavasqlPreparedStatement.html#setTimestamp%28int,%20java.s

  • 在Jackson中读取嵌入式对象

    要处理“嵌入式”对象,您应该使用@JsonUnwrapped它-等同于Hibernate的@Embeddable @Embedded。 class Item { private String title; @JsonProperty"date" private Date createdAt;

  • Firebase分析中的事件“ first_open”如何计数?

    有多种原因使 first_open 计数与Google Play或App Store的 安装 次数不同。您提到了我们文档中的一个关键区别。您还提到了第二个- 如果用户再次安装,打开,卸载并打开该应用程序,则在Play中将被视为一次安装,在Firebase中将被视为两次first_opens。 最后一个重要的区别是,当现有用户迁移到包含Firebase的应用程序的新版本时

  • Gradle多模块项目设置

    您选择的目录布局已经暗示了一个好的解决方案。我建议有三个独立的构建:EnterpriseApp1,CommonLib,和ClientApplication。我将发布CommonLib到Maven或Ivy存储库,以便其他两个版本可以从那里使用它。对于本地开发,您可以发布CommonLib到本地Maven仓库(最简单)或基

  • 使用属性文件中的条目填充HashMap

    如果我理解正确,则属性中的每个值都是代表整数的字符串。因此,代码如下所示: for String key : properties.stringPropertyNames { String value = properties.getPropertykey; mymap.putkey, Integer.valueOfvalue; }

  • 避免在JMS / ActiveMQ上重复消息

    您应该看看Apache Camel,它提供了一个与任何JMS提供程序一起使用的幂等消费者组件,请参阅:http :

  • 我应该在生产中使用什么tomcat本机库?

    Tomcat本地版本是使用高度优化的Apache可移植运行时(APR)的Tomcat版本,该框架是为Apache HTTP服务器提供支持的相同框架。

  • 如何将“未来的未来”变成一个未来的对象?

    简短答案(英语):flatMap dat sh!t 较短的答案(Scala): flatMapidentity 最短答案:(Scala 2.12): flatten 长答案(Java): flatMapnew MapperFuture<

  • 为Weka增加Java中的堆大小

    我发现实际的问题在中的文件'RunWeka.ini'中'\Program Files x86\Weka-3-6'。我用记事本打开了文件,在文件的中间有一行'maxheap = 512m'。 我将行更改为read 'maxheap=2000m',保存了文件并重新加载了weka,这解决了我的问题。 我不确定这

  • 从JSF传递Enum值作为参数

    您不能在EL中访问像这样的枚举。但是,JSF内置了用于EL的枚举转换器。您可以只使用枚举名称作为字符串。 h:commandButton value="Test" action="#{myBean.Test'PROFILE_COMMENT'}"

  • 我可以使用哪种变量类型在Java中保存大量数字(超过30个数字)?

    您可以使用BigInteger类。 BigInteger bi1 = new BigInteger"637824629384623845238423545642384"; BigInteger bi2 = new BigInteger"30397