📄 j02060109.java
字号:
import java.lang.*;
class j02060109
{
public static void main(String para[])
{
char[] ch1 = {'G','O','O','D'};
char[] ch2 = {'C','Y','H','~','~','c','c'};
System.out.print("第一次印出 ch2 数组:");
for(int x =0;x<ch2.length;x++)
System.out.print(ch2[x]);
System.out.println();
System.arraycopy(ch1,0,ch2,5,2);
//从 ch1[0] 开始复制 2 元素值,作为 ch2[5]~ch2[6] 的元素值
System.out.print("第二次印出 ch2 数组:");
for(int x =0;x<ch2.length;x++)
System.out.print(ch2[x]);
System.out.println();
char[][] twoDim = {{'T','h','i','s'},{' ','i','s'},{' ','f','i','s','h'}};
System.arraycopy(twoDim[2],1,ch2,0,4);
//从 twoDim[2][1] 开始复制 4 元素值,作为 ch2[0]~ch2[3] 的元素值
System.out.print("第三次印出 ch2 数组:");
for(int x =0;x<ch2.length;x++)
System.out.print(ch2[x]);
System.out.println();
//=====================================================================
char[][] desArr = new char[3][]; //char[] 那层的元素已配置实体
System.arraycopy(twoDim,0,desArr,0,3); //copy 到 desArr[0]~desArr[2]
/* 所复制元素型态为 char[],取得之值为参考地址,
故desArr 和 twoDim 最末层共享同一份实体。 */
System.out.print("印出 desArr 数组:");
for(int x=0;x< desArr.length;x++)
{
for(int y=0;y< desArr[x].length;y++)
{
System.out.print(desArr[x][y]);
}
}
System.out.println();
desArr[2][1] = 'W'; //改变 desArr 最末层部分元素之值
desArr[2][2] = 'O';
desArr[2][3] = 'R';
desArr[2][4] = 'K';
System.out.print("改变 desArr 最末层内容后,印出 twoDim 数组:");
for(int x=0;x< twoDim.length;x++)
{
for(int y=0;y< twoDim[x].length;y++)
{
System.out.print(twoDim[x][y]);
}
}
/*
byte[] byteArr = new byte[]{1,2,3,4,5,6};
int[] intArr = new int[10];
System.arraycopy(byteArr , 0 , intArr , 2 ,6);
//执行期错误,Primitive 元素型态不同,它不会自动转型
*/
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -