一、求最值
定义一个数组{33,5,22,44,55},求最大值
定义数组来存储5个值
int[] arr ={33, 5, 22, 44, 55};
临时认为0索引的数据是最大的
int max = arr[0];
拿每一个元素跟max进行比较
for (int i = 1; i < arr.length; i++) {
if(arr[i] > max)
{
max = arr[i];
}
但循环结束后,max记录的就是最大值
System.out.println(max);
总代码块:
public class array_test {
public static void main(String[] args) {
int[] arr ={33, 5, 22, 44, 55};
int max = arr[0];
for (int i = 1; i < arr.length; i++) {
if(arr[i] > max)
{
max = arr[i];
}
}
System.out.println(max);
}
}
二、求和并统计个数
遍历数组求和
需求:生成10个-100之间的随机数存入数组。
- 求出所有数据的和
- 求出所有数据的平均数
- 统计有多少个数据比平均值小
(1)定义数组
int[] arr = new int[10];
(2)生成随机数
Random r = new Random();
(3)把随机数存入数组中
for (int i = 0; i < arr.length; i++) {
int number = r.nextInt(100) + 1;
arr[i] = number;
}
- 求出所有数据的和
定义求和变量
int sum = 0;
循环得到每一个元素,并加到sum中
for (int i = 0; i < arr.length; i++) {
sum = sum + arr[i];
}
求出所有数据的平均数
int avg = sum / arr.length;
System.out.println("平均数是:" + avg);
统计有多少个数据比平均值小
int count = 0;
for (int i = 0; i < arr.length; i++) {
if(arr[i] < avg){
count++;
}
}
System.out.println("随机数中比平均数小的有" + count + "个");
可以打印出数据进行验证
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
总代码块:
import java.util.Random;
public class array_test{
public static void main(String[] args) {
int[] arr = new int[10];
Random r = new Random();
for (int i = 0; i < arr.length; i++) {
int number = r.nextInt(100) + 1;
arr[i] = number;
}
int sum = 0;
for (int i = 0; i < arr.length; i++) {
sum = sum + arr[i];
}
System.out.println("数组和是:" + sum);
int avg = sum / arr.length;
System.out.println("平均数是:" + avg);
int count = 0;
for (int i = 0; i < arr.length; i++) {
if(arr[i] < avg){
count++;
}
}
System.out.println("随机数中比平均数小的有" + count + "个");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}
三、交换数据
需求:定义一个数组,存入1,2,3,4,5,按照要求交换索引对应的元素
- 交换前:1,2,3,4,5
- 交换后:5,4,3,2,1
(1)定义数组存储数据
int[] arr ={1, 2, 3, 4, 5};
(2)利用循环交换数据
for(int i = 0,j = arr.length-1;i < j;i++,j--){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
(3)打印输出数据
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
总代码块:
public class array_test {
public static void main(String[] args) {
int[] arr ={1, 2, 3, 4, 5};
for(int i = 0,j = arr.length-1;i < j;i++,j--){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}
四、打乱数据
需求:定义一个数组,存入1-5。要求打乱数组中所有数据的顺序(随机打乱)
定义数组存储1-5
int[] arr = {1, 2, 3, 4, 5};
循环遍历数组,从0索引开始打乱数据的顺序
Random r= new Random();
for (int i = 0; i < arr.length; i++) {
int randomIndex = r.nextInt(arr.length);
int temp = arr[i];
arr[i] = arr[randomIndex];
arr[randomIndex] = temp;
}
输出打乱顺序后的数据
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
总代码块:
import java.util.Random;
public class array_test {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5};
Random r= new Random();
for (int i = 0; i < arr.length; i++) {
int randomIndex = r.nextInt(arr.length);
int temp = arr[i];
arr[i] = arr[randomIndex];
arr[randomIndex] = temp;
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}