草庐IT

行为不当

全部标签

java - 泛型 - 下限/上限通配符行为?

这个问题在这里已经有了答案:WhatisPECS(ProducerExtendsConsumerSuper)?(16个答案)关闭5年前。我正在尝试了解下限和上限通配符的行为。尝试编译以下代码时遇到问题。Collectionc=newArrayList();c.add(newObject());//Compiletimeerror为了弄清楚这个问题,我也简单地尝试了下界通配符。幸运或不幸的是,代码编译得很好,但造成了很多困惑。Collectionc=newArrayList();c.add(newObject());//Compilesfine有人可以向我解释一下这两个代码片段是如何工作

java - 如何制作保留 FIFO 行为的 Java PriorityBlockingQueue?

我正在尝试在Java中创建一个优先级阻塞队列,以维护具有相同优先级的元素的FIFO顺序。Oracle文档对此提供了一些帮助,但我仍然很纠结。我应该注意到以下主题对我来说都是全新的:泛型、作为类型的接口(interface)和静态嵌套类。所有这些都在以下类定义中发挥作用。泛型尤其令人困惑,我敢肯定我在这里完全搞砸了它们。我已经包含了注释来识别我当前遇到的编译器错误。几个具体问题:是否可以让类代表排队的事件对象,而实际队列是静态类成员?将Oracle的FIFO事件“包装器”作为静态嵌套类包括在内是否合理?至少我是在正确的轨道上,在一个外部类中完成这一切吗?这是我写的类:importjava

java - Java 的 ScheduledExecutorService.scheduleAtFixedRate() 行为

我有一个关于scheduleAtFixedRate()的问题Java6中ScheduledExecutorService的方法。[编辑:1.6的Javadoc比1.5的更完整。请参阅下面的评论]鉴于:ScheduledExecutorService是在池中使用N=1个线程构建的固定速率是T秒的周期没有初始延迟在这种情况下会发生什么(在实时意义上,时间并不是绝对的):在时间T,服务启动一个Runnable任务,“task1”在时间2T,task1尚未完成,服务计划启动服务是否保证执行以下任何操作?(a)在2T,启动一个Runnable任务,“task2”(召回N=1)(b)阻塞直到tas

java - JIT 是这种行为的原因吗?

受此启发question,我写了测试:publicclassMain{privatestaticfinallongTEST_NUMBERS=5L;privatestaticfinallongITERATION_NUMBER=100000L;privatestaticlongvalue;publicstaticvoidmain(finalString[]args)throwsThrowable{for(inti=0;i这个程序在普通情况下被打印出来:nonEqualsCount=12;//orothernon0value;nonEqualsCount=0;nonEqualsCount=0

istream ::操作员>>(int&)似乎对空格的行为很奇怪

由于某种原因,操作员>>在我的程序中表现奇怪。这是代码:ifstreamfs;fs.open(filename,ifstream::in);if(!fs){cout>skeleton;while(getline(fs,input)){stringstreamss(input);cout>nodeId;cout>nodePosition;cout>prevId;cout(nodePosition,prevId);cout我的文件看起来像这样:0-0.064703554.10290.645867-114.2545648.24541.73375025.9445127.2658-0.003

java - JColorChooser 中的异常行为(或可能的错误)

使用JColorChooser时,输入的CMYK值会转换为特定的RGB颜色。当在RGB侧手动输入该颜色时,CMYK值和以前不一样了。以下程序可用于演示我遇到的行为。importjava.awt.*;importjavax.swing.*;publicclassColorChooserProblem{JFramef=newJFrame("TestingColorChooser");publicstaticvoidmain(String[]args){newColorChooserProblem().start();}publicvoidstart(){f.setDefaultCloseO

java - 有没有办法确保 GAE 上任务队列的 FIFO(先进先出)行为?

有没有办法确保GAE上任务队列的FIFO(先进先出)行为?GAE文档说FIFO是影响任务执行顺序的因素之一,但同一份文档说“系统的调度可能会‘跳’新任务到队列的头部”,我已经通过测试。结果:我的事件正在乱序处理。Docssays:https://developers.google.com/appengine/docs/java/taskqueue/overview-pushTheorderinwhichtasksareexecuteddependsonseveralfactors:Thepositionofthetaskinthequeue. AppEngineattemptstopr

java - Java正则表达式中捕获组的行为困惑

在此answer我推荐使用s.replaceFirst("\\.0*$|(\\.\\d*?)0+$","$1");但是有两个人提示结果中包含字符串“null”,例如23.null。这可以用$1(即group(1))为null来解释,它可以通过String.valueOf到字符串“null”。但是,我总是得到空字符串。我的testcase覆盖它和assertEquals("23",removeTrailingZeros("23.00"));通过。确切的行为是否未定义? 最佳答案 Matcher的文档当在替换字符串中指定了不捕获任何内容

java - 静态变量的奇怪行为

这个问题在这里已经有了答案:Javastaticfinalfieldinitializationorder(4个答案)关闭7年前。我有类AbstractsAndInterfaces:publicstaticAbstractsAndInterfacesinstance=newAbstractsAndInterfaces();privatestaticfinalintDELTA=5;privatestaticintBASE=7;privateintx;publicAbstractsAndInterfaces(){//System.out.println(BASE);//System.out

java - 对线程行为有点困惑

我在Thread中编写了一个基本代码,我得到的输出非常令人惊讶。publicclassThreadImpimplementsRunnable{publicstaticvoidmain(String[]args){ThreadImpthreadImp=newThreadImp();Threadt=newThread(threadImp);t.setName("Fred");t.start();threadImp.run();t.run();}publicvoidrun(){System.out.println("CurrentThread:"+Thread.currentThread()