数组

DAY2

对于容器操作,一般我们分为三种操作类型
1、定位
2、替换
3、求长
目前我们看到的是数组,数组的定位,替换求长分别是:
//数组的定位
int item = arrays[4];
int item2= array[6];
int item3= array[-1];
//数组的替换
arrays[3]=100;
//数组的求长
int length= arrays.length;

int[] arrays={1,2,3,4,5,6};//静态赋值
int[] arrays = new int [6];//动态赋值
arrays[0]=1;
arrays[1]=2;
//数组的反转
//建立新的数组反转
for(int j=0;j<arrays.length;j++){
result[j]=arrays[arrays.length-1-j];
}
//在原有的位置上反转,不创建新的数组
int i =arrays.length/2;
for(int j=0;j<i;j++){
int temp=arrays[j];
arrays[j]=arrays[arrays.length-1-j];
arrays[arrays.length-1-j]=temp;
}

//数组的遍历1
for(int j=0;j<arrays.length;j++){
System.out.print(arrays[j]);
}
//数组的遍历方法2:增强式for循环
for(int item : result){
System.out.print(item);
}

//数组的排序
//直接排序:与后面的分别比较、交换
import java.util.;
public class DSort{
public static void main(String[] args){
int[] arrays={32,64,58,99,77,63,21,18};
//两个for循环的嵌套
//外层for循环确定需要替换的位,内层for负责比较
for(int i=0;i<arrays.length;i++){
for(int j=i;j<arrays.length;j++){
if(arrays[i]<arrays[j]){
int temp=arrays[i];
arrays[i]=arrays[j];
arrays[j]=temp;
}
System.out.println(“第”+i+“趟排序第”+j+“次:”+Arrays.toString(arrays));
}
System.out.println(“第”+i+“趟排序结束:”+Arrays.toString(arrays));
}
System.out.println(Arrays.toString(arrays));//变成字符串
}
}
//选择排序:找到最大的进行替换
import java.util.
;
public class SSort{

public static void main(String[] args){
int[] arrays={32,64,58,99,77,63,21,18};
for(int i=0;i<arrays.length;i++){
int max=arrays[i];
int index=i;
for(int j=i;j<arrays.length;j++){
if(max<arrays[j]){
max=arrays[j];
index=j;
}
}
int item=arrays[i];
arrays[i]=arrays[index];
arrays[index]=item;
}

System.out.println(Arrays.toString(arrays));
}
}
//冒泡排序:比较前一个与后一个的值,后一个大则交换。
import java.util.*;
public class BSort{
public static void main(String[] args){
int[] arrays={32,64,58,99,77,63,21,18};
for(int i=0;i<arrays.length;i++){
for(int j=0;j<arrays.length-i-1;j++){
if(arrays[j]<arrays[j+1]){
int temp=arrays[j];
arrays[j]=arrays[j+1];
arrays[j+1]=temp;
}
}
}
System.out.println(Arrays.toString(arrays));
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值