本人学习笔记,有需要可拿走
数组的定义赋值
package Continue;
public class ArraysDemo {
public static void main(String[] args) {
int[] x ={1,3,4,4,6,7};//数组可以通过下标遍历出,index从零开始
//变量的类型 变量的名字 = 变量的值;
//先声明,再使用
int[] numbers;//1 定义
int[] a = new int[7];//new 一个整形的空间大小为7,空间名为a,类型为整形数组
//数组内的数据类型相同
// 给数组元素赋值
a[0] = 1;
a[1] = 2;
a[2] = 3;
a[3] = 4;
a[4] = 5;
a[5] = 6;
a[6] = 7;
System.out.println(a[4]);
int sum = 0;
for (int i = 0; i <=a.length; i++) {
sum = sum+i;
System.out.println(sum);
System.out.println(i);
}
}
}
手撕代码,代码中有比较详细的解释
package Continue;
public class ArraysDemo2 {
public static void main(String[] args) {
int[] arrays = {1,2,3,54,95};
//打印全部的数组元素
for (int i = 0; i <arrays.length; i++) {
System.out.println(arrays[i]);
}
//计算所有元素的和
int sum = 0;
for (int i = 0; i <arrays.length; i++) {
sum = sum + arrays[i];
}
System.out.println("求和为" + sum);
//求出数组中最大的数
int x = 0; //在循环外定义初值,循环外可打印最后执行的结果,避免每一次都打印
for (int i = 0; i <arrays.length; i++) {
x = arrays[0];
if (arrays[i]>x){
x = arrays[i];
}
}
System.out.println("最大的数是"+x);//在for 和 if 外面,打印最终的结果
}
}
数组元素交换及打印的方法
package Continue;
public class ArraysDemo3 {
public static void main(String[] args) {
//JDK1.5 以上可用 增强for循环
int[] arrays = {1,2,3,4,5};
for (int array : arrays) {
System.out.println(array);
System.out.println(); result(arrays);
}
int[] result = result(arrays);//调用result方法,传入数组arrays 将实参arrays{1,2,3,4,5} 传给函数 result 函数中的形参 arrays
printArrays(result);//调用函数 printArrays 将resul 传给 printArrays函数的形参arrays
}
//数组顺序调换,第一个给最后一个
public static int[] result(int[] arrays){//方法函数result 类型整型的数组,参数名为arrays
//函数的作用交换数组元素的顺序
int[] result = new int[arrays.length];
for (int i = 0,j = arrays.length-1; i <arrays.length ; i++,j--) {
result[i] = arrays[j];
}
return result;
}
//打印数组元素
public static void printArrays(int[] arrays){
for (int i = 0; i < arrays.length; i++) {
System.out.println(arrays[i]+" ");
}
}
}
冒泡排序,将数组元素两两比较交换位置即可
交换位置是定义一个临时变量temp
package Continue;
import java.util.Arrays;
public class ArraysDemo8 {
public static void main(String[] args) {
int[] a = {1,9,78,2554,6,5,6412,56};
sort(a);
System.out.println(Arrays.toString(a));//调用方法tostring,将a中的元素打印出来
}
//冒泡排序,比较数组的两个元素,交换两个元素的位置,每一次循环产生一个最小数或者最大数
public static int[] sort(int[] arrays){
int temp = 0;//两者交换需要定义一个第三者变量
for (int i = 0; i <arrays.length; i++) {//外层循环控制走的起点
for (int j = 0; j <arrays.length-1-i; j++) {
if (arrays[j+1]<arrays[j]){
temp = arrays[j+1];
arrays[j+1] = arrays[j];
arrays[j]= temp;
}
}
}
return arrays;
}
}