首页 > 编程语言 >Java中的传值和传引用

Java中的传值和传引用

时间:2023-11-08 15:22:36浏览次数:30  
标签:java Intent 引用 Java 序列化 传值

三年以前读研究生的时候,就因为传值和传引用的问题给自己挖过一个坑

情景是,我将matlab代码翻译到java中

最后计算的结果偏差超过了限差的范围,也超过了java中数据截断误差的范围。

经过最后的排查发现,在计算的过程中,一个不应该改变的值被我以引用的形式传入了方法中,方法内部对值进行了更改最后导致了计算结果不正确

 

今天又碰到了跟传引用相关的问题

数据是通过Intent传入下一个Activity中的

计算结束后,数据通过Intent回传回来,这期间数据经过了序列化与反序列化,做到了很好的隔离

问题是,要赋值的时候,把外部的fragment中的对象的引用地址改了,而不是改变了原来的引用的内容,导致外部Activity中的值没变化

标签:java,Intent,引用,Java,序列化,传值
From: https://www.cnblogs.com/baidurenshen/p/17815647.html

相关文章

  • 七、Java集合
    一、集合概述集合的特点如下:动态大小:集合可以根据需要动态调整大小,不像数组需要提前指定大小。灵活性:集合提供了各种不同类型的数据结构和容器,例如列表、集、映射、队列等,以满足不同的存储和操作需求。高效性:Java集合框架中的实现类经过优化,提供高效的插入、删除和查找......
  • JAVA遍历list是对其操作
    @Testpublicvoidremove(){ArrayList<String>list=newArrayList<>();list.add("php");list.add("java");list.add("php");list.add("php");list.add(......
  • java lambda表达式、匿名类和接口
    从匿名类重写已有类的方法开始这段代码,在AnonymousDemo内部创建了一个Polygon类的p1对象但这个Polygon类内部的方法被重写了,是一个匿名类,内部类和外部类重名,重写了内部的方法这个机制应该理解为继承,内部的Polygon继承了外部的Polygon类,重写了display方法,Polygon的其他没被重写......
  • 【Java SE】String.format格式化
    String.format1、字符串左对齐,不足10位的右侧补空格:[123      ]String.format("%-10s","123");2、字符串右对齐,不足10位的左侧补空格:[      123]String.format("%10s","123");3、整数格式化10位,不足左侧补0:[0000000123]String.format("%010d",123) ......
  • Java根据日期计算星期几的四种方法
    在我们日常业务代码中,经常要用到星期几,下面这篇文章主要给大家介绍了关于Java根据日期计算星期几的四种方法,文中通过代码将每种实现的非常详细,需要的朋友可以参考下方法一:根据基姆拉尔森日期公式publicstaticvoidmain(Stringargs[]){Scannerscanner=new......
  • Java的设计模式之工厂模式
    在软件设计中,我们经常遇到需要创建不同类型对象的情况,但是如果直接在代码中实例化对象,会使代码紧密耦合在一起,难以维护和拓展,此外,如果对象的创建方式需要变化,那么就需要再整个代码中进行大量的修改。工厂模式旨在解决这个问题。工厂模式提供了一个创建对象的接口,但是将具体的对象创......
  • java一体化医疗信息管理系统源码:云HIS、云病历、云LIS
    基于云计算技术的B/S架构的HIS系统,为医疗机构提供标准化的、信息化的、可共享的医疗信息管理系统,实现医患事务管理和临床诊疗管理等标准医疗管理信息系统的功能。系统利用云计算平台的技术优势,建立统一的云HIS、云病历、云LIS,有效实现实现协同门诊、住院、药房药库管理、双向转诊转......
  • Java打包镜像部署
    Java打包镜像DockerfileFROMopenjdk:17WORKDIR/opt/data-hubCOPYtarget/data-hub.jar./EXPOSE9843ENTRYPOINT["java","-jar","data-hub.jar"]构建镜像命令dockerbuild-toldweipro/data-hub:latest.运行镜像dockerrun-p9843:9843-......
  • 创建一个 java agent jar 包
    pom.xml文件。(javaagent和main方法的jar可以分开成两个项目,单独打包jar)<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"......
  • javascript 手动实现 bind,call,apply
     js手动实现call方法Function.prototype.myCall=function(content,...args){letmyfn=Symbol()content=content||globalThis//console.log(content)content[myfn]=this//console.log(content)constresu......