所以我正在学习Java,但是我有一个问题。看来,类型int
,boolean
并且string
将是只是我会永远需要的变量方面的一切,也许除外好float
时,需要在多个十进制数字都可以使用。
我的问题是,其他类型的如long
,double
,byte
,char
等曾经在正常的日常编程中使用?这些可以用于哪些实际用途?它们的作用是什么?
除了“ short”(可能是对空间的浪费)之外,“ short”可能是一个例外-有时候,从字面上看,它们都是上课的动力:
[*]例如,在奔腾架构的Hotspot中,除法运算和浮点运算通常需要完全相同的时间。
除非您 真正 了解它们,否则不要对这些类型的内存使用 感到 困惑。例如:
显然,有某些API调用(例如,由于某种原因而导致浮点数的非CPU密集型任务的各种调用),您只需要将其传递给它所要求的类型即可!!
请注意,String不是原始类型,因此它实际上并不属于此列表。
问题内容: 有人告诉我: 在x86-64下,FP算法是通过SSE完成的,因此long double是64位。 但是在x86-64 ABI中它表示: 参见:amd64-abi.pdf 和gcc说是16并给出= 和 所以我很困惑,64位怎么样?我认为这是一个80位的表示形式。 问题答案: 在x86-64下,FP算法是通过SSE完成的,因此long double是64位。 这就是 通常发生 X86-64
问题内容: 我在工作的技术测试中遇到了这个问题。给出以下代码示例: 输出为65534。 此行为仅显示负值。0和正数产生相同的值,表示在SOP中输入的那个。此处的字节无关紧要;我尝试过没有它。 所以我的问题是:这到底是怎么回事? 问题答案: 在您了解这里发生的事情之前,我们需要达成一些先决条件。了解以下要点后,剩下的就是简单的推论: JVM中的所有原始类型都表示为一系列位。的类型是由32位,所表示和
问题内容: 如何在Java中找到两个长数值的模(%)?我的代码说“整数太大”,后面跟我要修改的数字。我尝试将其强制转换很长时间,但没有成功。我是否必须将其转换为BigInteger并使用剩下的方法?谢谢。 问题答案: 该运营商做工作多头。听起来您可能忘记了放在数字文字的末尾,如中所示。我们可以看到您的代码吗?
问题内容: ava中的Double Brace初始化语法()是什么? 问题答案: 双括号初始化将创建一个从指定类(外部括号)派生的匿名类,并在该类(内部括号)内提供一个初始化程序块。例如 请注意,使用这种双重括号初始化的作用是创建匿名内部类。创建的类具有this指向周围外部类的隐式指针。尽管通常不是问题,但在某些情况下(例如序列化或垃圾收集时)可能会引起悲伤,值得一提的是。
问题内容: 在JDK中,它实现为: 这意味着该参数根本不执行任何操作。 它背后的想法是,在具有更准确时序的硬件上,针对它的JVM可以为其提供更好的实现吗? 问题答案: 常规操作系统没有足够细粒度的分辨率,无法一次睡眠数纳秒。但是,存在实时操作系统,其中安排事件在确切的时间发生是至关重要的,并且许多操作的延迟非常低。ABS系统是RTOS的一个示例。在此类系统上,纳秒级睡眠比在操作系统无法可靠地睡眠少
问题内容: 和之间有什么区别? 问题答案: 是一个对象,并且是原始数据类型。 有关更多详细信息,请参见此答案。 Double类将原始类型double的值包装在对象中。类型为Double的对象包含单个类型为double的字段。 来源:http : //docs.oracle.com/javase/7/docs/api/java/lang/Double.html