public class T02 { public static void main(String[] args) { int[][]arr=new int[][]{{1,2,3,4,5},{1,2,3,5},{8,9,7}}; int sum=0; for(int i=0;i< arr.length;i++){ for(int j=0;j<arr[i].length;j++){ sum=arr[i][j]+sum; } } System.out.println("sum="+sum); } } //和为50
public class T02 { public static void main(String[] args) { //声明并且初始化数组 int[][]arr=new int[10][]; //给数组的元素赋值 for(int i=0;i< arr.length;i++){ arr[i]=new int[i+1]; arr[i][0]=arr[i][i]=1; if(i>1){ for(int k=1;k<arr[i].length-1;k++){ arr[i][k]=arr[i-1][k-1]+arr[i-1][k]; } } } //遍历数组 for(int i=0;i< arr.length;i++){ for(int j=0;j<arr[i].length;j++){ System.out.print(arr[i][j]+"\t"); } System.out.println(); } } }
public class T03 { public static void main(String[] args) { int[] arr=new int[10]; for(int i=0;i< arr.length;i++){ arr[i]=(int)Math.random()*((99-10+1)+10); //[a,b]中的随机数的公式:Math.readom()*((b-a+1)+a). //注意这里出来的为double类型。 } //求最大值 int maximum=0; for(int i=0;i< arr.length;i++){ if(maximum<arr[i]){ maximum=arr[i]; } } System.out.println("最大值为:"+maximum); //求最小值 int minimum=arr[0]; for(int i=1;i< arr.length;i++){ if(minimum>arr[i]){ minimum=arr[i]; } } System.out.println("最大值为:"+minimum); //求和 int sum=0; for(int i=1;i< arr.length;i++){ sum=sum+arr[i]; } System.out.println("sum:"+sum); //求平均数 System.out.println("平均数为:"+sum/ arr.length); } }
(1) Erstellen Sie eine Klasse mit dem Namen T04 und deklarieren Sie zwei Variablen array1 und array2 in der main()-Methode
Sie sind Arrays vom Typ int[].
(2) Verwenden Sie geschweifte Klammern {}, um Array1 mit 8 Primzahlen zu initialisieren: 2, 3, 5, 7, 11, 13, 17, 19.
(3) Zeigt den Inhalt von Array1 an.
(4) Weisen Sie die Array2-Variable gleich Array1 zu und ändern Sie das gerade Indexelement in Array2, um es dem Indexwert anzupassen (z. B. Array[0]=0, Array[2]=2). Array1 ausdrucken. **Denken Sie: Welche Beziehung besteht zwischen Array1 und Array2?
Erweiterung: Ändern Sie die Frage und realisieren Sie die Kopie von Array1 von Array2
public class T04 { public static void main(String[] args) { int[] array1,array2; array1=new int[]{2,3,5,7,11,13,17,19}; for(int i=0;i< array1.length;i++){ System.out.print(array1[i]+"\t"); } //赋值array1变量等于array2 //不能称作数组的复制 array2=array1; for(int i=0;i< array1.length;i++){ if(i%2==0){ array2[i]=i; } } System.out.println(); System.out.println("******************************************"); for(int i=0;i< array1.length;i++){ System.out.print(array1[i]+"\t"); } } }
(1) Die Adresswerte von Array1 und Array2 sind gleich und sie beide verweisen auf die einzige Array-Entität im Heap-Bereich
(2)
for(int i=0;i< array1.length;i++){ array2[i]=array1[i]; }
Methode 2
int i=0; int j=0; for(i=0,j= arr.length-1;i<j;i++,j--){ int a=arr[i]; arr[i]=arr[j]; arr[j]=a; }
public class T05 { public static void main(String[] args) { int[]arr=new int[]{1,2,3,4,5,6,7,8,9}; for(int i=0;i< arr.length;i++){ System.out.print(arr[i]+"\t"); } System.out.println(); for(int i=0;i< arr.length;i++){ if(i< arr.length-1-i){ int a=arr[i]; arr[i]=arr[arr.length-1-i]; arr[arr.length-1-i]=a; } } for(int i=0;i< arr.length;i++){ System.out.print(arr[i]+"\t"); } } }
//Die Prämisse muss in Ordnung sein
Beispiel: Werfen Sie zuerst einen Blick von klein nach groß
import java.util.Scanner; public class T07 { public static void main(String[] args) { Scanner s = new Scanner(System.in); int a= s.nextInt(); int[]arr=new int[]{1,2,3,4,6,7,8,9,10}; int left=0; int right= arr.length-1; boolean is=true; while(left<=right){ int average=(int)(left+right)/2; if(arr[average]>a){ right=average-1; } else if(a==arr[average]){ System.out.println("找到了,下标是:"+average); is=false; } else { left = average + 1; // }if(left==right){ // System.out.println("没有找到"); // is=false; } } if(is){ System.out.println("很遗憾没有找到"); } } }
public class T08 { public static void main(String[] args) { int[]arr=new int[]{33,55,2,6,-8,-5,66,1,63}; 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]){ int a=arr[j]; arr[j]=arr[j+1]; arr[j+1]=a; } } } for(int i=0;i< arr.length;i++) { System.out.println(arr[i]); } } }
Dies ist eine Frage zur Implementierung der Matrixprogrammierung. Matrizen werden in Java im Allgemeinen durch zweidimensionale Arrays implementiert.
Der spezifische Code lautet wie folgt:
import java.util.Random; /** * 求一个3*3矩阵对角线元素之和 * * @author ChenZX * */ public class Test04 { public static void main(String[] args) { int sum = 0; //和 int[][] arr = new int[3][3]; Random r = new Random(); for(int i=0;i<3;i++){ //随机生成矩阵 for(int j=0;j<3;j++){ arr[i][j] = r.nextInt(10); //0到9 } } for(int i=0;i<3;i++){ //遍历矩阵 for(int j=0;j<3;j++){ System.out.print(arr[i][j]+" "); //打印矩阵元素 if(i==j){ //如果为对角线元素 sum += arr[i][j]; //求和 } } System.out.println(); //每输出3个元素换行 } System.out.println("此矩阵对角线的和为:"+sum); } }
Das obige ist der detaillierte Inhalt vonJava verwendet ein zweidimensionales Array, um ein 10-zeiliges Yang-Hui-Dreieck zu drucken. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!