* java 中的數組 對象數組 以及main方法中的參數 x y不用中間參數實現交換

來源:互聯網
上載者:User
 

/*  java 中的數組  對象數組   以及main方法中的參數    x y不用中間參數實現交換
java 基礎資料型別 (Elementary Data Type) 的數組 初始化元素為 0
java中數組名.length表示數組中元素的個數
main方法中的 args[] 從0開始 是java 類  後面的字串  args.length也是儲存了 元素的個數

System.out.println()  在列印對象的時候 包括我們自己定義的對象 他會調用toString方法 因為所有類都是從object派生而來  列印出類測描述
建議所有子類都應該覆蓋這個方法  用來描述類

基礎資料型別 (Elementary Data Type)作為參數傳遞的 是副本的拷貝 

引用資料類型作參數傳遞的是引用的拷貝

 

*/
import java.lang.String;

/*class  Student   //引用資料類型
{
 int age;
 String name;
 Student(String name,int age)
 {
  
 }
}*/
class Test
{
 
   static void change(int x,int y)   //交換值
  
   {
   x=x+y;
   y=x-y;
   x=x-y;
  }
 static  void change(Point pt) //交換值
  {
   pt.x=pt.x+pt.y;
   pt.y=pt.x-pt.y;
   pt.x=pt.x-pt.y;
  }
  static void change(int []num)  //交換值
  {
   num[0]=num[1]+num[0];
   num[1]=num[0]-num[1];
   num[0]=num[0]-num[1];
   
  }
  
 
 
 public  static void main(String []args)
 {
  
  
  
  
 /*if(args.length!=3)
  {
   System.out.println("must  have three  pramarater  ");
   System.exit(-1);
  }
  else
  {
   for(int count=0;count<args.length;count++)  //迴圈輸出 三個參數
   {
   System.out.println(args[count]);
  }
  }
  
  */
// int []num=new int[10];  //java中基礎資料型別 (Elementary Data Type)的數組 都會被初始化為 0  開闢的數組空間的首地址賦值給 num  num.length表示數組中元素的個數 數組引用的一個屬性
  /*
  如果 num=null 那麼就切斷了 num 和數組對象的參考關聯性 那麼數組對象那塊記憶體就成了垃圾記憶體
  在不確定的時間裡就會被記憶體回收機制給回收了
  
  
  
  for(int i=0;i<10;i++)
  {
   System.out.println(num[i]);
  }
   
//引用資料類型
  /* Student []students;
  students=new Student[3];  //分配三塊記憶體 但是沒有指派至   也就是每個元素沒有儲存 Student對象 所以列印出null
  for(int m=0;m<3;m++)  
  {
   System.out.println(students[m]);
  }
 }*/
 
 int a=3;
 int b=4 ;
 Point pt=new Point(a,b);  //聲明Point對象
 int []num=new int[]{3,4}; //聲明數組
  change(a,b);
  System.out.print("a="+a+","+"b="+b+"\n"); 
  change(num);
  System.out.print("a="+num[0]+","+"b="+num[1]+"\n");
  change(pt);
//System.out.print("a="+pt.x+","+"b="+pt.y+"\n");  
  System.out.print(pt);  //重載了toString函數 輸出對象成員值

}
 
}

 

class Point
{
 Point(int a,int b)
 {
  this.x=a;
  this.y=b;
 }
 int x;
 int y;
 public  String toString()
 {
  String str=new String("x="+x+","+"y="+y);
  return str;
 }
 
 
}

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.