问题标签 [primitive]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
986 浏览

objective-c - Objective-C 方法参数问题

我正在尝试定义一个非常简单的实用程序方法,这将使我不必使用计算器将 RGB 值定义为百分比。当我在 DrawView.m 文件的第 96 行查看 Apple 的示例代码“QuartzCache”时,我看到了:

但是,当我尝试创建如下方法时,编译器讨厌我。半小时的密集谷歌搜索没有产生任何帮助。

定义这种方法的正确方法是什么?我在这里做错了什么?

0 投票
4 回答
992 浏览

java - 在 API 设计中避免使用原语?

我正在设计一个 API。它将有很多方法做同样的事情,但有不同的参数原语。

由于原语,我必须复制和粘贴很多,我认为随着时间的推移,这是相当不可维护的。在方法和构造函数中避免使用原语是个好主意吗?例如,上面的替换将是:

编辑:

这有什么缺点?

0 投票
4 回答
14865 浏览

c# - c# 中的原始数据类型是原子的(线程安全的)吗?

例如,bool多线程时是否需要锁定一个值?

0 投票
3 回答
390 浏览

java - 尝试在泛型中使用原始类型时出现奇怪的编译时行为

我试图完全理解泛型在 Java 中是如何工作的。在上面代码片段的第三个赋值中,事情对我来说有点奇怪:编译器抱怨Integer[]无法转换为int[]. 当然,该声明是 100% 正确的,但我想知道为什么编译器会提出此投诉。

如果您注释该行,并按照编译器的“建议”进行第四次赋值,编译器实际上是满意的!!! 现在代码编译得很好!当然,这很疯狂,因为就像运行时行为所暗示的那样,int[]无法转换为Object[](这是T[]在运行时类型擦除的内容)。

所以我的问题是:为什么编译器“建议”我分配给Integer[]第三次分配?编译器是如何得出这个(错误的!)结论的?


到目前为止,这两个答案存在很多混淆,因此我创建了另一个令人费解的示例来说明这里的潜在问题:

我是唯一一个认为编译器让上面的代码编译绝对是疯狂的人吗?

c.getSuperclass().getName()例如,在上面的代码中打印并不是不合理的,因为我指定了T extends Number. 当然现在getName()会扔的NullPointerException时候c == int.class,既然c.getSuperclass() == null

对我来说,这是拒绝编译代码的一个很好的理由。


也许是终极疯狂:

该代码编译运行良好。

0 投票
1 回答
339 浏览

java - Casting a primitive int to a Number

Let's say that I have the following:

http://java.sun.com/docs/books/jls/first_edition/html/15.doc.html#238146 says that a primitive value may not be cast to a reference type. Does Java know to create an Integer from the primitive int and then cast to the superclass? How exactly does Java handle this behind the scenes? Thanks!

0 投票
2 回答
5189 浏览

java - JNI 新的原始类型

我们如何在 JNI 中创建新的原始类型。我有一个返回jobject. 可以返回jint,jchar等。

有,NewString为什么没有NewInteger,,,等等。目前在 JNI 层没有自动装箱。NewCharacterNewDouble

我可以进行NewObject调用,但是创建原始类型的开销太大。

我有包装函数来获取 Class 和 MethodID。

0 投票
2 回答
4030 浏览

java - JPA(Hibernate)列映射中的原始类和包装类有什么区别?

例如,数据库表中有一个整数列。然后在 java 模型中,它可以映射为原始 intInteger。我的问题是在这种情况下 int 和 Integer 有什么区别?和性能问题?谢谢!

0 投票
1 回答
1120 浏览

xna - 带有第一人称相机的 XNA 中的纹理基元

所以我设置了一个 XNA 应用程序。相机处于第一人称模式,用户可以使用键盘四处移动并使用鼠标重新定位相机目标。我已经能够很好地加载 3D 模型,它们出现在屏幕上也没问题。每当我尝试绘制任何图元(纹理与否)时,无论我如何定位相机,它都不会出现在屏幕上的任何位置。

在 Initialize() 中,我有:

在 LoadContent() 中,我有:

在 Draw() 我有:

我认为我在 quadEffect 属性中做错了,但我不太确定是什么。

0 投票
6 回答
19938 浏览

java - 如何使用 Jersey REST 序列化 Java 原语

在我的应用程序中,我使用 Jersey REST 序列化复杂对象。这工作得很好。但是有一些方法只返回一个 int 或 boolean。

Jersey 无法处理原始类型(据我所知),可能是因为它们没有注释,并且 Jersey 没有默认注释。我通过创建像 RestBoolean 或 RestInteger 这样的复杂类型来解决这个问题,它们只保存一个 int 或 boolean 值并具有适当的注释。

难道没有比编写这些容器对象更简单的方法吗?

0 投票
4 回答
2399 浏览

objective-c - Objective-C 类,指向原始类型的指针等

我将长话短说,并举一个我的问题的例子。

给定一个具有指向原始类型的指针作为属性的类:

类被实例化,并且 aNumber 被分配并分配一个值,相应地:

然后通过引用传递它来分配此类类的单独实例的 aNumber 值,相应地:

然后 Fred 的 aNumber 指针被释放、重新分配并分配一个新值,例如 7。

现在,我遇到的问题;由于 Fred 被分配了与 Bob 相同的指针,我希望 Bob 的 aNumber 现在的值为 7。它没有,因为由于某种原因它的指针被释放,但没有重新分配(它仍然指向第一次分配的地址相同,现在已释放)。然而,Fred 的指针在不同的内存位置具有分配的值 7。

为什么会这样?我在误解什么?我怎样才能让它像 C++ 一样工作?

编辑:对,一个新鲜的早晨,我可以看到我举了一个非常糟糕的下午 5 点综合症的例子。我想要做的更像是这样的:

numA 被分配并赋值。稍后,在一个单独的线程中(带有必要的锁等),这是完成的:

numA 确实被释放,但没有被分配 numB 指向的值,这是我想要的行为。

更长的故事的一部分是它是传递给openGL的顶点缓冲区的一部分的顶点计数。我意识到它不应该是一个指针,但是坐标的 float* 缓冲区以相同的方式处理并且需要具有可变大小,所以我想解决这个问题也可以解决这个问题。