java笔记之值交换
来源:互联网 发布:淘宝hd是什么意思 编辑:程序博客网 时间:2024/05/21 08:05
- 基本类型交换不会改变其值,以为在每个函数会在栈中有自己的内存,主函数和调用函数都有自己的栈内存,当调用函数执行完后其栈内存就会释放,故基本类型不会得到改变
- 数组类型可以交换,在函数的栈中的变量都指向同一个堆中的数组,故可以交换
- String类型不可以交换,String不可变的字符串,指向常量池的地址,交换后主函数的变量指的地址还是不会变,所以不会改变
- 代码演示
package java7_0;public class Demo1 { //基本类型的交换 public static void change(int a,int b) { int temp = a; a=b; b=temp; System.out.println(a+" "+b); } //数组的交换 public static void change1(int[] array,int index1,int index2){ int temp = array[index1]; array[index1]=array[index2]; array[index2]=temp; for (int i = 0; i < array.length; i++) { System.out.print(array[i]+" "); } System.out.println(); } //String 类型的交换 public static void change2(String src,String source1) { src = source1; System.out.println(src); } public static void main(String[] args) { // 基本数据类型交换 int a =10; int b =20; change(a, b); System.out.println(a+" "+b); //数组交换 int[] array={1,2,3,4,5,6}; change1(array, 1, 2); for (int i = 0; i < array.length; i++) { System.out.print(array[i]+" "); } System.out.println(); //String类型交换 String srcString ="wangyi"; change2(srcString, "baidu"); System.out.println(srcString); String srcString2 ="tencent"; change2(srcString, srcString2); System.out.println(srcString); }}
基本数据类型交换20 1010 20数组交换1 3 2 4 5 6 1 3 2 4 5 6 String类型交换baiduwangyitencentwangyi
0 0
- java笔记之值交换
- Java笔记:位运算之异或交换数值原理
- java之交换两个变量
- Oracle与Java之发布交换参数值的方法
- Java值传递之swap()方法不能交换
- java 值交换
- Java 值交换详解
- Java基础----值交换
- java的值交换
- 黑马程序员笔记:Java基础知识之位运算--两变量值交换方法
- 萌新笔记之交换排序
- java排序算法之(交换法排序)
- Java程序排序之交换排序
- Java之数据的交换比较
- Java程序排序之交换排序
- 交换排序之快速排序Java实现
- 交换排序之冒泡排序Java实现
- java实现交换排序之冒泡排序
- 为什么很多程序员都选择跳槽?
- 杀毒卫士(1)---启动界面
- HDU 1052Tian Ji -- The Horse Racing
- python中set去重注意事项
- HDOJ-----2602Bone Collector(DP-----01背包)
- java笔记之值交换
- windows下安装Mysql 5.6(zip格式安装包)
- HDU 1562 Guess the number
- 2016最新CocoaPods安装与使用,问题解决
- coderforces 702B - Powers of Two(二分)
- poj2676Sudoku(dfs)
- WORD2013使用技巧——调整序号中制表位的大小
- 常见接口类型
- HDU 1061Rightmost Digit