2021/10/12周小结

94 阅读1分钟

//返回值

1.return语句:结束该方法,继续执行方法后的语句
(方法要么只有一个返回值,要么没有返回值,返回值是viod类型不用写返回值)

//数组的四种赋值方式

 1.  int[] nums = new int[5]             //直接
      for(int i=0;i<5;i++){
            num[i]=i+1;
            
 2.  int[] nums2                     //先声明(定义)
     nums2 = new int [5];
     for(int i=0;i<nums2.length;i++){
            num[i]=i+1;

 3.   int[] nums3 = new int[]{1,2,3,4,5};
        
 4.   int[]  nums4 = {1,2,3,4,5};
     
     System.out.println("数组的长度:"nums.length)
     

//数组的遍历

    1.通过下标来访问数组中的元素,下标从0开始,到数组长度-1
    如:
    int[] scores ={8990};
    访问最后一个元素值:
    int lastElement = scores[scores.length-1];
    //遍历  
        (可以先定义int len = scores.length;)  //长度不变的情况下效率更高
    for(int i=0;i<scores.length;i++){
    
        int score= scores[i];
        System.out.println(score);  
        
        
   方式2.
       增强for循环  jdk1.5新特性
       for(int x:scroes){
              System.out.println(x);}
      public static void print(int[] x){
             int len = x.length;
             for(int i=0;i<len;i++){
             
             System.out.println(X[i]);
           }
      }
  }
     
           

//栈和堆

    1.栈内存   //大小固定  先进后出
    用于存储局部变量,临时变量(基本数据类型)和引用变量;
    
    2.堆内存   //大小不固定  存对象
    数组是引用类型,会存放在堆内存中


//三种排序方式

   1.冒泡排序
   //外循环控制轮数
    for(int i=0;i<nums.length-1;i++){   //比较轮数等于数列长度-1
     //控制相邻
       for(int j=i+1;j<nums.length;j++){
      
       if(nums[j]>nums[j+1]){                     //加减  x=1; y=2;
                                                          x=x+y ;     x=1+2          
           nums[j] = nums[j]+nums[j+1];                   y=x-y ;     y=3-2
           nums[j+1] = nums[j]-nums[j+1];                 x=x-y ;     x=3-1   x=2 y=1
           nums[j] = nums[j]-nums[j+1];
           
           
           
           }

     2.选择排序
     int[] nums = {34,4,56,17,90,65}; //待排序的数列
            int minIndex = 0; //用于记录每次比较的最小值下标
            for(int i=0;i<nums.length-1;i++){             
                minIndex = i;  //最小值等于i
                for(int j=i+1;j<nums.length;j++){    //j=i+1.控制相邻 j必须小于低针长度

                    if(nums[minIndex]>nums[j]){   //如果minIdex小于j,那最小值就等于j
                        minIndex = j;

                    }
                }
                //判断需要交换的下标是否为自己
                    if(minIndex!=i){                
                        nums[minIndex] = nums[minIndex]+nums[i];                      
                        nums[i] = nums[minIndex]-nums[i];                                   
                        nums[minIndex] = nums[minIndex]-nums[i]; 

//交换方式补充

   //添加中间变量方式
   int temp = redBall[index];
                redBall[index] = redBall[redBall.length-1-i];
                redBall[redBall.length-1-i] = temp;
   //添加一个中间变量
    int x = 1; y = 2;
    int z;
    z=x; x=y; y=z;
     
      

//Arrays工具类

   import java.util.Arrays;   
      1.输出数组
      for(int n:num){
            System.out.println(n);
      2.在测试输出数据是,可以使用,更加方便
      System.out.println(Arrays.toString(nums));
      
      3.排序
      int []nums2 = {10,32,22,44,54,3,12};
      Arrays.sort(nums2);     //快速排序
      System.out.println(Arrays.toString(nums2));

//Random工具类

        Random r = new Random();   //赋一随机值