操作数组、软件开发管理
操作数组、软件开发管理
操作数组
数组的复制
System.arraycopy()方法用来进行数组的复制
public class ArrayCopyDemo01 {
public static void main(String[] args) {
//定义一个数组
int[] arr1 = {12,4,56,32,9,8};
int[] arr2 = new int[arr1.length];
//复制数据
/* for (int i = 0; i <arr2.length ; i++) {
arr2[i] = arr1[i];
}*/
//src:源数组 srcPos:源数组中的起始位置 dest:目标数组
//destPos:目标数组中的起始位置 length:要复制的数组元素的数量
System.arraycopy(arr1,1,arr2,0,4);
//查看复制后的数组
for (int i = 0; i < arr2.length ; i++) {
System.out.print(arr2[i]+" ");// 4 56 32 9 0 0
}
System.out.println();
}
}这种方式 只适合于数组的复制
Arrays.copyOf()方法用于数组复制、数组的”扩容”
import java.util.Arrays;
import java.util.Random;
/**
* 数组的扩容
* 怎样查找数组的最大值
*/
public class ArrayCopyDemo02 {
public static void main(String[] args) {
int[] arr1 = new int[10];
Random random = new Random();
//循环赋值
for (int i = 0; i < arr1.length; i++) {
arr1[i] = random.nextInt(100);//生成0-99
}
int max =arr1[0];
System.out.println("数组中的数据为"+Arrays.toString(arr1));
for (int i = 1; i < arr1.length; i++) {
if (max <arr1[i]){
max = arr1[i];
}
}
System.out.println("数组的最大值是:"+max);
//数组的扩容 第一个参数:源数组 第二个参数:目标数组的长度
//返回的结果是新数组
int[] arr2 = Arrays.copyOf(arr1,11);
arr2[10] = max;
//打印新数组
System.out.println("新数组是"+Arrays.toString(arr2));
}
}
排序
常用的排序算法 插入排序 冒泡排序 快速排序等
冒泡排序
通过不断比较相邻的元素并交换位置来将较大的元素逐步”冒泡”到数组的末尾
import java.util.Arrays;
/**
* 冒泡排序 两两比较 满足条件交换位置
*/
public class BubbleSortDemo01 {
public static void main(String[] args) {
int [] array = {89,50,84,57,61,20,70};
//打印排序前的数组
System.out.println("排序前:"+Arrays.toString(array));
//冒泡排序
//外层循环控制有几轮
for (int i = 0; i <array.length-1 ; i++) {
//内层循环控制每一轮有几次比较
for (int j = 0; j < array.length-1-i; j++) {
if(array[j] > array[j+1]){
int temp = array[j];
array[j] =array[j+1];
array[j+1] = temp;
}
}
}
//输出数组
System.out.println("数组中的数据为:"+ Arrays.toString(array));
}
}Arrays.sort()方法用于数组排序
Arrays.sort()是java中提供的一个静态方法,用于对数组进行排序
它使用的是优化后的快速排序
import java.util.Arrays;
/**
* Arrays类的sort方法
*/
public class ArraySortDemo {
public static void main(String[] args) {
int [] arr ={99,88,77,78,97,68,72,75,22,79};
Arrays.sort(arr);
System.out.println("排序结果:"+Arrays.toString(arr));
}
}
字符串与字符数组
import java.util.Arrays; |
软件开发管理
软件生命周期
传统软件生命周期
可行性研究报告->需求分析->软件设计->编码->软件测试->->软件维护
敏捷开发
以用户的需求进化为核心,采用迭代\循序渐进的方法进行软件开发
敏捷开发框架
代码管理
软件开发平台
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 李福腾の博客!