• Integer 类型初始化 && java 形参


    参考:http://blog.sina.com.cn/s/blog_6b8b431d0100y8s0.html

    int a = 1;
    Integer b = 1;
    Integer c = new Integer(1);
    Integer d = Integer.valueOf(1);   //Integer.valueOf(int i) 源码上是 进行范围判断后 采用 new Integer(i)方法
    System.out.println(a==b);     // true
    System.out.println(a==c);     // true
    System.out.println(a==d);     // true
    System.out.println(b == c);   // false
    System.out.println(b == d);   // true
    System.out.println(c == d);   // false   
    如果
    Integer e = c;
    System.out.println(e==c);   //  true 所指对象与c一致;
    
    System.out.println(c.equals(b));  // true 因为值相等  

    当和包装类对比的对象是其对应的基本类型时,包装类会自动拆箱成基本数据类型与之对比

    java 函数形参:

    参考:http://blog.csdn.net/tianlincao/article/details/6875593

    第一:java方法基本数据类型是传值,对象类型传引用,这是千真万确的。  不会修改基本数据类型本身
    
    第二:当参数是对象时,无论方法体内进行了何种操作,都不会改变实参对象的引用。
    
    第三:当参数是对象时,只有在方法内部改变了对象的内容时,才会改变实参对象内容。

    个人认为: java中形参都是传递的复制对象,形参为基本数据类型时,传递的是复本的值。

                    形参为对象时,传递的是该引用的复本,你只能修改引用所指向对象(类似C/C++里面指针的思考),但是不能修改这个引用(或参数本身)

    另外,如果形参中的对象没有初始化,即只是一个对象引用没有指向对象,则会报错。

             在函数中将参数对象置为null,对原对象无影响   ps:传递的是引用的复本

    参考:http://zhidao.baidu.com/question/137268222.html 未被采纳的那条回答

           方法中的局部变量,在方法结束后被回收,但是如果在方法中被外部变量引用,则方法结束后,仍旧会存活

  • 相关阅读:
    20145303刘俊谦 《Java程序设计》第三周学习总结
    20145303刘俊谦 《Java程序设计》第2周学习总结
    MWeb Lite以及Eclipse的使用感想
    学号20145303 《Java程序设计》第一周学习总结
    问卷调查
    20145235 《Java程序设计》第5周学习总结
    20145235 《Java程序设计》第4周学习总结
    20145235李涛 《Java程序设计》第3周学习总结
    20145235 学号 《Java程序设计》第2周学习总结
    20145235李涛《Java程序设计》第一周学习总结
  • 原文地址:https://www.cnblogs.com/nkxyf/p/2976116.html
Copyright © 2020-2023  润新知