Tag: 方法 调用

这里发生了什么? java分配问题OCJP

两段代码,一块有效,另一块没有,但两者似乎做同样的事情 这很有效 short s=7; 但事实并非如此。 这给出了错误,无法将int赋值为short。 我默认知道一个整数的字面值是int但是如果它可以直接在上面分配,那么为什么不传递给方法呢? class Demo1{ public static void main(String[] args){ new Demo1().go(7); } void go(short s){System.out.println(“short”);} }

如何暂停java线程一小段时间,如100纳秒?

我知道Thread.sleep()可以让java线程暂停一段时间,比如某些毫秒和某个纳秒。 但问题是这个函数的调用也会导致开销。 例如,如果我想要一个线程暂停100纳秒,我调用Thread.sleep(0,100) 。 这个过程的全部成本是invocation_cost + 100 nanosceonds ,这可能比我想要的要大得多。 我怎么能避免这个问题,实现我的目的呢? 我需要这个的原因是我想离线进行模拟。 我描述了任务的执行时间; 现在我想通过在同一时间段内挂起一个线程来模拟这个执行时间。 谢谢!