简单数据类型和复杂数据类型值传递

来源:互联网 发布:linux将utf8转换为gbk 编辑:程序博客网 时间:2024/05/16 09:05

1.简单数据类型

简单数据类型是通过值传递,不能被其他方法改变,

举例

public class Test8 {public static void main(String[] args) {// TODO Auto-generated method stubint a =12;Test8.test(a);System.out.println(a);}static void test(int a){a++;}}

输出为12

由于int为简单数据类型,简单数据类型为值传递,因此不能改变a的值

2.复杂数据类型

复杂数据类型是通过引用传递,因此其他方法对该数据进行操作时,可以改变该类型的值

举例

package duotai;/* * 功能:演示各种排序算法 */public class Test7 {public static void main(String[] args) {// TODO Auto-generated method stub    int[] arr = {1,3,2,7,-5,9};    Buff buff =new Buff();    buff.sortMaopao(arr);    for(int i =0;i<arr.length;i++){    System.out.println(arr[i]);    }}}class Buff{public void test(int a){++a;}//从小到大排序public int[] sortMaopao(int[] arr){int temp =0;//外层循环for(int i=0;i<arr.length-1;i++){//内存循环for(int j= 0;j<arr.length-1-i;j++){if(arr[j]>arr[j+1]){temp = arr[j];arr[j]= arr[j+1];arr[j+1] = temp;}}}return arr;}}

输出为:-5 1 2 3 7 9

即数组进行了从小到大的排序


0 0
原创粉丝点击