java - 通过引用传递双精度值

2023-11-26

如何在java中通过引用传递双精度值?

example:

Double a = 3.0;
Double b = a;
System.out.println("a: "+a+" b: "+b);
a = 5.0;
System.out.println("a: "+a+" b: "+b);

此代码打印:

a: 3 b: 3
a: 5 b: 3

我的问题是让它打印:

a: 3 b: 3
a: 5 b: 5

我的目标: 我正在用 jess 编写一个专家系统,在该应用程序中,段的长度将具有双精度值,现在双精度值不在单个段中;它在许多其他部分、比例等级等中,所有这些都引用它,等待它改变,以便它们可能满足一些规则。

如果我无法更改该双精度值,则无法触发某个包含引用该双精度值的对象的规则。


Java不支持指针,因此不能直接指向a的内存(如在C/C++中)。

Java确实支持引用,但引用只是对对象的引用。无法引用本机(内置)类型。因此,当您执行时(自动装箱将代码转换为以下内容)。

双a = new Double(3.0);

这意味着当你执行

Double b = a;

你获得了对 a 对象的引用。当您选择更改时(自动装箱最终会将上面的代码转换为此)

a = new Double(5.0);

这不会影响 b 对先前创建的引用new Double(3.0)。换句话说,你不能通过直接操作 a 来影响 b 的引用(或者 Java 中没有“远距离操作”)。

也就是说,还有其他解决方案

public class MutableDouble() {

   private double value;

   public MutableDouble(double value) {
     this.value = value;
   }

   public double getValue() {
     return this.value;
   }

   public void setValue(double value) {
     this.value = value;
   }
 }

 MutableDouble a = new MutableDouble(3.0);
 MutableDouble b = a;

 a.setValue(5.0);
 b.getValue(); // equals 5.0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java - 通过引用传递双精度值 的相关文章

  • HTTP 状态 404 - 请求的资源不可用

    在使用 MyEclipse IDE 中的 Tomcat 服务器和 Struts 2 框架时 我遇到了反复出现的问题 我将我的程序作为服务器应用程序运行 当它运行时 默认的index jsp 文件将成功打开 但应用程序的其他过去都不起作用 当
  • Spring控制器是线程安全的吗

    我遇到了这个控制器示例 想知道它是否是线程安全的 我特别想知道 gson 实例变量 import org springframework stereotype Controller import org springframework we
  • 任务“:app:dexDebug”执行失败

    我目前正在处理我的项目 我决定将我的 Android Studio 更新到新版本 但在我导入项目后 它显示如下错误 Information Gradle tasks app assembleDebug app preBuild UP TO
  • Android - 如何访问 onResume 中 onCreate 中实例化的 View 对象?

    In my onCreate 方法 我正在实例化一个ImageButton View public void onCreate Bundle savedInstanceState super onCreate savedInstanceSt
  • Google 地图查询返回的 JSON 包含像 \x26 这样的编码字符(如何解码?)

    在 Java 应用程序中 我获取 JSON 来自 Google 地图 其中包含以下字符 x26我想将其转换为其原始字符 据我所知 这是一个 UTF 8 表示法 但我不完全确定 在源 JSON 中 可能会出现各种编码字符 例如 x3c div
  • MP3:一种以毫秒为单位获取任何给定字节位置的位置的方法?

    我创建了一个 servlet 它返回从客户端请求的任何给定字节位置开始的流 来自 MP3 文件 这允许客户端在任何给定字节位置立即开始播放 而无需进行任何本地查找 现在 我有一个滑块可以直观地显示进度 我正在使用当前字节位置来更新滑块 但是
  • 使用 Checkstyle Plugin 时从插件调用代码时出现问题:“org.eclipse.jface”

    我正在尝试在 Rational Software Architect 7 0 0 4 上使用 eclipse cs 插件 我最近卸载了旧的 beta2 版本并安装了 beta3 插件本身按照之前的配置工作 但是每当我尝试通过 Windows
  • 无法加载 jar 文件的主类

    我使用 Eclipse IDE 开发了一个应用程序 创建应用程序后 我以 jar 格式导出项目 当我尝试运行此 jar 文件时 出现错误 无法加载主类 请帮忙 当您将项目导出为 jar 时 请参阅此所以问题 https stackoverf
  • 如何解决 onEditCommit 事件上的类型不匹配错误?

    我在 Fxml 中使用 onEditCommit 事件在用户编辑数据后检索数据 FXML 代码
  • 使用 Java 在浏览器中下载 CSV 文件

    我正在尝试在 Web 应用程序上添加一个按钮 单击该按钮会下载一个 CSV 文件 该文件很小 大小仅约 4KB 我已经制作了按钮并附加了一个侦听器 文件也准备好了 我现在唯一需要做的就是创建单击按钮时下载 csv 文件的实际事件 假设 fi
  • 想要开发像 Facebook 这样的网站 - 处理数百万个请求 - 高性能 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想用 Java 开发一个像 Fac
  • Java:VM 如何在 32 位处理器上处理 64 位“long”

    JVM 如何在 32 位处理器上处理 64 位的原始 long 在多核 32 位机器上可以并行利用多个核心吗 64 位操作在 32 位机器上慢了多少 它可能使用多个核心来运行不同的线程 但不会并行使用它们进行 64 位计算 64 位长基本上
  • 如何在java中使jpeg无损?

    有没有人可以告诉我如何使用编写 jpeg 文件losslessjava中的压缩 我使用下面的代码读取字节来编辑字节 WritableRaster raster image getRaster DataBufferByte buffer Da
  • tomcat 过滤所有 web 应用程序

    问题 我想对所有网络应用程序进行过滤 我创建了一个过滤器来监视对 apache tomcat 服务器的请求 举例来说 它称为 MyFilter 我在 netbeans 中创建了它 它创建了 2 个独立的目录 webpages contain
  • 不兼容的类型:在 java netbeans 中对象无法转换为 String

    我试图在我的项目中使用对象数组 但出现错误 incompatible types Object cannot be converted to String 在这一行 ST1 new String emt1 emt2 emt3 emt4 现在
  • 使用 Java 从 S3 上的文件在 S3 上创建 zip 文件

    我在 S3 上有很多文件 需要对其进行压缩 然后通过 S3 提供压缩文件 目前 我将它们从流压缩到本地文件 然后再次上传该文件 这会占用大量磁盘空间 因为每个文件大约有 3 10MB 而且我必须压缩多达 100 000 个文件 所以一个 z
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • 如何将实例变量传递到 Quartz 作业中?

    我想知道如何在 Quartz 中外部传递实例变量 下面是我想写的伪代码 如何将 externalInstance 传递到此作业中 public class SimpleJob implements Job Override public v
  • java中如何找到class文件的包

    我正在编写一个使用 class 文件的 java 程序 我希望能够读取文件系统上的 class 文件 使用 InputStream 并确定它所在的包 该 class 文件可能不在一个好的包目录结构中 它可能位于某个随机位置 我怎样才能做到这
  • 使用 eclipse IDE 配置 angularjs

    我想开始使用 AngularJs 和 Java Spring 进行开发 我使用 Eclipse 作为 IDE 我想配置我的 Eclipse 以使这些框架无缝工作 我知道我可能要求太多 但相信我 我已经做了很多研究 你们是我最后的选择 任何帮

随机推荐

  • 从 vc++ 调用存储在堆中的代码

    想象一下我正在做这样的事情 void p malloc 1000 char p some opcode char p 1 another opcode for the sake of the example the opcodes are
  • 在 SWT-Widgets 上自动生成 ID

    有没有办法在 SWT Widgets 上自动生成 ID 以便 UI Tests 可以引用它们 我知道我可以使用 seData 手动设置 id 但我想以某种通用的方式为现有应用程序实现此功能 您可以使用以下命令为应用程序中的所有 shell
  • python 客户端服务器编程?

    这是 python 中的多线程服务器和客户端的源代码 在代码中 客户端和服务器在作业完成后关闭连接 我想保持连接处于活动状态并通过相同的连接发送更多数据避免每次关闭和打开套接字的开销 以下代码来自 http www devshed com
  • 为什么我的解决方案如此慢以及如何提高查询性能?

    目前我已经能够优化很多性能 但仍然有点慢 最新编辑 我当前的解决方案 最快的自动取款机 但仍然很慢 并保持秩序 server router post images function req res next var image bucket
  • 数组名是指针吗?

    C 中数组的名称是指针吗 如果不是 数组名称和指针变量有什么区别 数组是数组 指针是指针 但大多数情况下数组名称是转换的到指针 经常使用的一个术语是它们decay到指针 这是一个数组 int a 7 a包含七个整数的空间 您可以通过赋值将值
  • Pyspark 列转换:计算列中每个组的百分比变化

    我在本地计算机上使用 Pyspark 我有一个包含 450 万行和大约 30 000 种不同股票的 Spark 数据框 我需要计算每只股票随时间变化的百分比 我已经运行了 orderBy 以便将所有股票分组在一起 如下例所示 下面是一个简化
  • 在curl 7.33.0中使用--http2.0选项给出了不受支持的协议

    我使用的是centos 6 2 我需要在其中一个服务器请求中使用curl http2 0 但在查看之后我使用的是7 19 6http curl haxx se docs manpage html给我 http2 0 选项仅支持curl 7
  • Python:使用自动 Y 缩放绘制烛台

    我正在寻找一个Python绘图库 它允许我通过鼠标滚轮滚动 或类似 进行X缩放并在缩放时自动缩放Y轴来绘制烛台 最好是OHLC柱变体 作为我正在寻找的一个例子 tradingview com 完美地做到了这一点 看https uk trad
  • Spring Cloud:Feign 和 Http 连接池

    谁能告诉我 Spring Cloud Feign 客户端是否提供或支持 Http 连接池 如果是 如何配置池大小等设置 我在官方文档中似乎找不到这个 谢谢 通过调查 我将尝试回答我自己的问题 Spring Cloud Feign 使用 Ne
  • 为什么将闭包传递给接受函数指针的函数不起作用?

    In the 第二版Rust 编程语言 强调我的 函数指针实现了所有三个闭包特征 Fn FnMut and FnOnce 因此您始终可以将函数指针作为参数传递给需要闭包的函数 最好使用泛型类型和闭包特征之一来编写函数 以便您的函数可以接受函
  • 如何创建和使用ASP.NET vNext类库NuGet包?

    我想创建 ASP NET vNext 类库的 NuGet 包 我该怎么做 一步一步 我明白有kpm build 但我找不到关于在哪里下载 kpm 等的指南 另外 在获得它的 NuGet 包 或 DLL 后 如何将其从本地计算机添加到我的 v
  • 如何快速更新Google云存储上的静态站点?

    我有一个托管在谷歌云存储上的静态网站 我按照此处描述的相同方法进行设置 https cloud google com storage docs hosting static website 我已经购买了一个域名 目前网站运行顺利 我仍在更改
  • Asp.Net (MVC):哪个会话超时是什么?

    我制作了一个 Asp net MVC 网站 我对不同的超时设置感到非常困惑 有什么区别 web config 中的 SessionState 超时 应用程序池超时 Asp Net 会话超时属性 如果我想要 例如 6 小时的超时 我应该设置哪
  • PyQt4 - 从 QListWidget 中删除项目小部件

    我有一个 QListWidget 我需要删除一些项目 根据我的研究 这通常是一件令人不愉快的事情 我已经阅读了大量的解决方案 但没有一个适用于我的特定场景 目前 我只有实际的 Item Widgets 需要处理 不是它们的值或索引 这是因为
  • Visual Studio 忽略 #if DEBUG / RELEASE 范围内的代码,并且不检查错误或自动完成

    我一直在写一个 if DEBUG else endif代码片段 我注意到 Visual Studio 不允许我使用自动完成来完成部分键入的成员名称 并且它不会检查灰显的非活动代码是否有错误 我发现让它再次受到关注的唯一方法是将构建模式从 调
  • 在 LESS 中引用具有多层嵌套的父级

    我有以下较少 container column columns one width 40px 当我编译时 我的 CSS 得到以下内容 one container column one container columns width 40px
  • 在 Apache Spark Join 中包含空值

    我想在 Apache Spark 连接中包含空值 默认情况下 Spark 不包含带有 null 的行 这是默认的 Spark 行为 val numbersDf Seq 123 456 null toDF numbers val letter
  • ASP.net 中的 SendEmail 显示语法错误,命令无法识别。服务器响应是:Dovecot 就绪

    我想使用 ASP NET 发送邮件 代码如下 public void Semail string subject string messageBody string toAddress MailMessage mail new MailMe
  • 从 CGImageRef 创建的 UIImage 失败并显示 UIImagePNGRepresentation

    我使用以下代码从较大的 UIImage 中裁剪并创建一个新的 UIImage 我已将问题与函数 CGImageCreateWithImageInRect 隔离开来 该函数似乎没有按照我想要的方式设置某些 CGImage 属性 问题是调用函数
  • java - 通过引用传递双精度值

    如何在java中通过引用传递双精度值 example Double a 3 0 Double b a System out println a a b b a 5 0 System out println a a b b 此代码打印 a 3