java 函数参数赋值不起作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 函数参数赋值不起作用相关的知识,希望对你有一定的参考价值。

public void T(T_Attr pT)
。。。。。。
pT.pCode = pT.pCode + aF2.pCode + "\t" + tmp + ":=" + aF1.place + "*" + aF2.place + "\n";
。。。。

T_Attr eT1 = new T_Attr();
T(eT1);
断点时 此函数赋值成功 (变量pCode为private String)
跳出函数 再次调用eT1.pCode发现刚才赋值不起作用了 不知道为什么

希望大家给出解决办法
已经弄好了 谢谢大家

好纠结你的代码……我不知道出来的那两句语句到底写在哪里的~~
正常的要调用T的话,只能eT1自己调用,那么eT1.pCode是改变了的~我试验过
或者创建一个新的eT2,由eT2来调用T,那么eT1.pCode也是改变了,但是eT2的话,整个函数和它就没什么关系,不变也很正常……

所以,为什么会在函数的参数里写上一个T_Attr对象呢?我不是很明白……
参考技术A 代码多发点出来,就这么点,搞不清楚这些代码在什么类中,怎么看啊 参考技术B 不太清楚你的原来的类是怎么写的,方法是怎么调用的。所以也给不出办法。。。 如果还在,可以h!我,发源码看看有什么问题。 参考技术C pCode如果是private的怎么可以被访问
除非是同一个类内内的方法访问
同一个类内我刚试了pT的pCode在方法调用完后是改变了的
如下:

public class test

private String pcode="no";

public void T(test t)
t.pcode="yes";


public static void main(String[] args)
test test=new test();
System.out.println("before:"+test.pCode);
test.T(test);
System.out.print("after:"+test.pCode);

以上是关于java 函数参数赋值不起作用的主要内容,如果未能解决你的问题,请参考以下文章

ES6 函数参数的默认值

使用参数数组更改 JavaScript 函数的参数值不起作用

C ++ lambda作为函数的模板参数不起作用

在函数参数中发送 shell 命令不起作用

Boost Thread int 参数到成员函数不起作用?

Django F() 表达式在函数参数中不起作用