如何在Java编程语言中添加指针?

时间:2015-07-30 11:52:32

标签: java c++ pointers

我正在尝试将C ++程序转换为Java程序,但我无法在java编程语言中获得指针的语法。我该怎么办?

2 个答案:

答案 0 :(得分:0)

你的问题很模糊,因为你没有指明你需要的指针。如果你需要指针算术,那么Java中最接近的是Unsafe API,它是专有的,不是官方JDK API的一部分。

如果你只需要传递指针并取消引用它们,那么Java中就不需要语法 - 实际上你必须从C ++代码中删除语法以获得Java中的等价物:

  • ptr->method()转换为ptr.method()

  • *ptr变为ptr

  • &obj变为obj

这是因为Java专门使用指针来引用对象,所以语法只是假设它们。

答案 1 :(得分:-1)

首先,在Java中没有指针(实际上,除了基元之外的所有东西都是指针,但是你想要改变传递的变量,不是吗?),所以你应该想一想如何在没有指针的情况下实现相同的功能指针。

如果你不能成功,你可以让你的方法接受一些东西,它保存另一个变量的参考,例如,AtomicReference<T>AtomicInteger / AtomicLong,相应地,intlong)。

这将是:

void changeMyString(AtomicReference<String> ref) {
    ref.set("Hello, World!");
}