当前位置: 首页 > news >正文

军队信息化建设网站阿里logo设计平台

军队信息化建设网站,阿里logo设计平台,网络营销是什么专业类别,网站建设价格明细欢迎转载#xff0c;转载请声明出处#xff01;-----------------------------------------前言#xff1a;java语言中#xff0c;參数的传递仅仅有一种机制。那就是值传递。 举例#xff1a;以下将通过几个样例来说明java中的參数传递机制#xff0c;这些样例基本涵盖了… 欢迎转载转载请声明出处 ----------------------------------------- 前言 java语言中參数的传递仅仅有一种机制。那就是值传递。 举例 以下将通过几个样例来说明java中的參数传递机制这些样例基本涵盖了全部參数传递的情况。 1.基本数据类型 public static void testBase(int i) {i 2;} 測试 int i 10; System.out.println(i);//10 testBase(i); System.out.println(i); //10结果当然非常显然都是10。由于基本数据类型传递的是值的一份拷贝副本对副本操作不影响原始值。 2.对象     2.1.对參数又一次赋值 public static void testObj(Object o) {o new Object(); }測试 Object o new Object(); System.out.println(o);// java.lang.Object1ff61bcf testObj(o); System.out.println(o);//java.lang.Object1ff61bcf方法中的參数仅仅是原始对象的一份拷贝更准确的讲是地址的一份拷贝故而对其进行又一次赋值并不会影响原始对象。   2.2.改变对象内部数据 public class S {private Object o new Object();private int i 2;public Object getO(){return o;}public void setO(Object o){this.o o;}public int getI(){return i;}public void setI(int i){this.i i;} } 測试方法 public static void testA(S s) {s.setI(100);s.setO(new Object()); }測试 S s new S(); System.out.println(s.getI(),s.getO());// 2,java.lang.Object11b75be2 testA(s); System.out.println(s.getI(),s.getO());//100,java.lang.Object1cf15b84由于对象作为參数传递的是对象的引用地址注意这是值传递。故參数所指的对象和原始引用所指的对象都是堆中的同一个对象故在測试方法中改动对象内容会改变对象的数据。 试试自己分析这个样例跟上面是一样的 package test; public class A {int t 6;Object obj new Object();public static void main(String[] args){A a new A(); a.func(a.t,a.obj);//问t和obj的值是否变化。答案不变化}public void func(int t,Object obj){t 7;obj null;} } 3.数组     3.1.对參数又一次赋值 public static void testArr(int[] arr){arr null;}測试 int[] arr {1,2}; System.out.println(arr[0]);//1 testArr(arr); System.out.println(arr[0]); //1 传递机制跟对象一样也是传递的对象地址故而也不改变原始值。      3.2.改变參数内部数据 public static void testArr(int[] arr){arr[0] 100;}測试 int[] arr {1,2}; System.out.println(arr[0]);//1 testArr(arr); System.out.println(arr[0]);//100 结果无须解释了吧。 4.基本数据类型的包装类型     事实上跟基本类型是一样的。 public static void testWrapper(Float f) {f 100.0f; }測试 Float f 12.0f; System.out.println(f);//12.0 testWrapper(f); System.out.println(f);//12.0 5.【重点】字符串 字符串作为參数的情形比較特殊。     5.1.对參数又一次赋值 public static void testStr1(String str) {str testOK; }測试 String str test; System.out.println(str);//testtestStr1(str);System.out.println(str);//test依据前面的思路字符串也是对象參数拷贝的是对象的地址。在方法内部将參数指向还有一个堆对象并不影响原始对象引用的指向。  5.2.对參数运行替换、连接等操作 public static void testStr2(String str) {str str.concat(OK);str str.toUpperCase();}測试 String str test; System.out.println(str);//test testStr2(str); System.out.println(str);//test 也是对str的又一次赋值。不改变原始串.     5.3.对參数运行的操作 public static void testStr3(String str){str OK;}測试 String str test; System.out.println(str);//test testStr3(str); System.out.println(str);//test假设你以为第二次输出testOK。那就错啦String类的’‘是经过重载的。编译时会还原成StringBuilder的append操作而且new了一个StringBuilder对象 str OK; str new StringBuilder(str).append(OK).toString();//编译时会还原成这样 显然也是对副本又一次赋值。并不影响原始的对象。 使用javap -c反编译一下会非常直观 6.StringBuffer或StringBuilder作为參数     6.1又一次赋值 public static void testStringBuilder(StringBuilder sb) {sb new StringBuilder(testOK); } 測试 StringBuilder sb new StringBuilder(test); System.out.println(sb.toString());//test testStringBuilder(sb); System.out.println(sb.toString());//test  6.2在方法内部调用StringBuffer或StringBuilder的append方法public static void testStringBuilder(StringBuilder sb) {sb.append(OK); } 測试 StringBuilder sb new StringBuilder(test); System.out.println(sb.toString());//test testStringBuilder(sb); System.out.println(sb.toString());//testOK 7.交换问题     经过上面的样例。相信对java參数传递机制比較清楚了所以请不要再写这种代码了 public static void swap(Integer a, Integer b) {Integer temp a;a b;b temp; }这根本不能交换两个数. 总结 1.假设參数是基本数据类型包含相应的包装类型。那么參数传递时仅仅是原始值的一份拷贝或者叫副本对副本操作并不影响原始值 2.假设參数是对象引用类型那么參数传递时传递的是对象的地址的一份拷贝所以对对象内部属性的操作会改变原始对象对应值可是对该參数进行又一次赋值并不会影响原始对象 3.String类型作为參数进行传递时传递的也是地址。可是String类比較特殊对參数进行concatreplace’‘等操作时不影响原始的串。对參数又一次赋值当然也不影响原始字符串。 4.数组类型作为參数跟传递对象时一样的。 转载于:https://www.cnblogs.com/mengfanrong/p/5262514.html
http://wiki.neutronadmin.com/news/177580/

相关文章:

  • 忻州网站建设求职简历怀柔富阳网站建设
  • 网站备案和服务器备案吗百度app最新版本
  • 公司网站建设457216336免费的ai作图软件
  • 象山县住房建设局网站南通网站建设公司排名
  • 怎么做产品的网站云南省建设交易中心网站
  • 网站开发上海广州怎么找做网站的公司
  • 成都企业网站建设哪家好行业网站怎么建设
  • 灵宝网站制作工作室网站开发上市公司
  • wordpress 关闭站点如何在工商局网站上做网登
  • 做网站的标准流程手机网站建设制作教程视频
  • 做网站需要人员投资管理公司注册条件和要求
  • 广州天河区做网站阿里云虚拟主机做wordpress
  • 企业网站意思东莞关键词排名快速优化
  • 大理网站推广贵阳做网站好的公司
  • 以下不属于网站建设优化大连建设网官方网站
  • 中小企业网站建设开题报告网页设计代码的基本格式
  • 上城区网站建设价格工厂外包小件加工
  • 织梦 网站教程普通话手抄报文字内容
  • 做最好最全的命理网站网站怎么做电脑系统下载文件
  • 营销网站制作需要多少钱网站开发必会语言
  • 做网站的的报价海口建设局网站
  • 学网站开发如何挣钱购物网站源码下载
  • 衡阳做网站优化做药品网站有哪些内容
  • 建站什么程序好淘宝运营公司哪家好
  • 做网站切图是什么意思怎么制作网站图片不显示
  • 深圳那家做APP网站的最好东莞网页制作与网站设计
  • 网站服务器备案查询免费域名网站
  • 免费1级做爰片在线网站wordpress访问速度突然好慢
  • 购物网站开发教程中文国家高新技术企业认定管理工作网
  • 大连网站开发价格北京网络公司建站