• 自己的小问题和数组常用的方法


    1、构造方法需要加空方法,而构造方法的名字是和类名一模一样的
    成员方法是不需要空方法的
    2、scanner使用最好用循环来完成,当输入时其顺序是不是按照你给的顺序完成的

    3、

    错误的:
    int temp=0;
    arr[temp]=arr[i];
    arr[i]=arr[max];
    arr[max]=arr[temp];


    在定义空的变量进行传递数值的时候,不能用arr【temp】,这样会将索引及数传递丢了一部分

    数组Arrays

    (1)数组:存储同一种数据类型的多个元素的容器。
    (2)特点:每一个元素都有编号,从0开始,最大编号是长度-1。
    编号的专业叫法:索引
    (3)定义格式
    A:数据类型[] 数组名;
    B:数据类型 数组名[];

    推荐是用A方式,B方法就忘了吧。
    但是要能看懂
    (4)数组的初始化
    A:动态初始化
    只给长度,系统给出默认值

    举例:int[] arr = new int[3];
    B:静态初始化
    给出值,系统决定长度

    package com.hanqi.maya.shuzu;
    
    import java.util.Arrays;
    
    public class Array {
        public static void main(String[] args) {
            int[] arr=new int[5];
            //fill填充数组
            Arrays.fill(arr, 3);
            p(arr);
            //二分搜素法,必须在使用之前进行排序,返回的是负数因为没在数组,同时也是30应该在的索引(从1开始)
            int[] arr1={11,22,33,44,67,89,56}; 
            int a=Arrays.binarySearch(arr1, 30);
            Arrays.sort(arr1);
            System.out.println(a);
        }
        public static  void p(int[] arr){
            for(int i=0;i<arr.length;i++){
                System.out.print(arr[i]+" ");
            }
        }
    
    }        

    package keshang;
    
    import java.util.Arrays;
    
    public class Array {
        
        public static void main(String[] args) {
            
            //int[] arr=new int[6];
            int[] arr={1,22,44,53,65,35};
            
        /*    Arrays.fill(arr, 3);
            
            Arrays.sort(arr1);*/
            
            //直接选择排序
            for(int i=0;i<arr.length;i++){
                int max=i;
                for(int j=i+1;j<arr.length;j++){
                    if(arr[max]<arr[j]){
                        max=j;
                    }
                }
            
                 int temp=arr[i];
                arr[i]=arr[max];
                arr[max]=temp;
            }
            p(arr);
        }
        
        public static void p(int[] arr){
            for (int i=0;i<arr.length ;i++){
                System.out.print(arr[i]+" ");
            }
        }
    
    }

    数组的各种用法

    package shipin;
    
    public class Array {
        //数组的最大值
        public int getMax(int arr[]){
            int max=arr[0];
            for(int i=1;i<arr.length;i++){
                if(max<arr[i]){
                    max=arr[i];
                }
            }
            return max;
        }
        
        //数组的最小值
        public int getMin(int arr[]){
            int min=arr[0];
            for(int i=1;i<arr.length;i++){
                if(min>arr[i]){
                    min=arr[i];
                }
            }
            return min;
        }
        
        //数组的总和
        public int getSum(int arr[]){
            int sum=0;
            for(int i=0;i<arr.length;i++){
                sum+=arr[i];
            }
            return sum;
        }
        
        //数组的平均值
        public int avg(int arr[]){
            int sum=getSum(arr);//在方法中调用方法
            return sum/arr.length;
        }
        //数组的遍历
        public void printArray(int arr[]){
            System.out.println("[");
            for(int i=0;i<arr.length;i++){
                System.out.println(arr[i]+"/t");
            }
            System.out.println("]");
        }
        
        //数组的排序
        public void paiXu(int arr[],String desc){
            if(desc=="asc"){
            for(int i=0;i<arr.length-1;i++){
                for(int j=0;j<arr.length-i-1;j++){
                    if(arr[j]>arr[j+1]){
                        int temp=arr[j];
                        arr[j]=arr[j+1];
                        arr[j+1]=temp;
                        
                        }
                    }
                }
            }else if(desc=="desc"){
                for(int i=0;i<arr.length-1;i++){
                    for(int j=0;j<arr.length-i-1;j++){
                        if(arr[j]<arr[j+1]){
                            int temp=arr[j];
                            arr[j]=arr[j+1];
                            arr[j+1]=temp;
                            
                            }
                        }
                    }
            }else{
                System.out.println("您输入的有误");
            }
        }
        
        //数组的反转
        public int[] fanzhuan(int arr[]){
            for(int x=0,y=arr.length-1;x<y;x++,y--){
                int temp=arr[x];
                arr[x]=arr[y];
                arr[y]=temp;
            }
            return arr;
        }
        
        //数组的复制
        public int[] copy(int arr[]){
            int arr1[]=new int[arr.length];
            for(int i=0;i<arr.length;i++){
                arr1[i]=arr[i];
            }
            return arr1;
        }
        
    
    
    }

     

  • 相关阅读:
    疫情环境下的网络学习笔记 python 5.8 数据库入门终章
    疫情环境下的网络学习笔记 python 5.7 navicat数据库,例题,sql注入
    疫情环境下的网络学习笔记 python 5.6 暂时看看
    疫情环境下的网络学习笔记 python 5.5 MYSql 表关系,外键
    疫情环境下的网络学习笔记 python 5.4 数据库基础
    疫情环境下的网络学习笔记 python 4.30 初识数据库
    疫情环境下的网络学习笔记 python 4.29 网络小项目
    XJOI 夏令营501-511测试11 游戏
    XJOI 夏令营501-511测试11 统计方案
    CF1197D Yet Another Subarray Problem
  • 原文地址:https://www.cnblogs.com/NCL--/p/7231277.html
Copyright © 2020-2023  润新知