值类型与引用类型的总结;==与equals的区别

 

注意:而String StrA=new String(); 这里的StrA表示引用类型;而作为引用类型参数传递时,没有修改内容是因为,String类的属性只有Get没有Set,所以修改不了。

 

 

示例代码:值类型赋值传递与引用类型赋值传递

【C#代码】
int a = 1;
            int b = a;
            a = 2;

            Console.WriteLine("a的值:"+a+";b的值:"+b);

            int [] strA = {1};
            int [] strB = strA;
            strA[0] = 2;
            Console.WriteLine("strA的值:" + strA[0] + ";strB的值:" + strB[0]);

 效果图如下:

 

===============

示例代码:==与equals()用于比较

【java代码】package lesson15;

public class example1 {

 /**
  * @param args
  */
 public static void main(String[] args) {
  
  //===================示例1====================//
  
  String jack="a";
  String mary="a";
  if(jack==mary){
   System.out.println("结果为真");
  }else{
   System.out.println("结果为假");
  }
  
  // 结果为真
  
  String jack1=new String("b");
  String mary1=new String("b");
  if(jack1==mary1){
   System.out.println("结果为真");
  }else{
   System.out.println("结果为假");
  }
  
  // 结果为假
  

  String jack1=new String("b");
  String mary1=new String("b");
  if(jack1.equals(mary1)){
   System.out.println("结果为真");
  }else{
   System.out.println("结果为假");
  }
  
  // 结果为真
} }

效果图如下:

 

posted @ 2017-04-10 02:09  xiaobudong  阅读(773)  评论(0编辑  收藏  举报