首页 > 其他分享 >第五天

第五天

时间:2024-01-28 22:46:58浏览次数:18  
标签:int System static 数组 第五天 public out

方法

什么是方法

修饰符+返回值类型+方法名名字(参数);有参数的话要有返回值。

方法的停止

return 可以停止方法

方法的重载

  1. 方法名称必须相同。

  2. 参数列表不同。

  3. 方法的返回类型可以相同也可以不相同。

  4. 仅仅返回类型不同不足以成为方法的重载。

递归

优点:可以减少代码复杂程度。

缺点:会压缩栈的空间,容易造成内存崩坏。

递归注意事项

  1. 递归要有结束,有尾。
package Void;

public class Demo02 {
    public static void main(String[] args) {
    int b = Jiecheng(4);
        System.out.println(b);
    }
    public static int Jiecheng(int a){
        if (a==1){//边界条件
            return 1;
        }
        else {
            return a*Jiecheng(a-1);
        }

    }
}

命令行传参

有时候你希望运行一个程序的时候在传递给他消息。这要靠传递命令行参数给main()函数实现。

可变参数

package Void;

public class Demo01 {
    static int a =1;
    public static void main(String[] args) {
        max(10,20,30,40);
    }
    public static void max(int...num){//可变参数必须是最后一个
        //找出多个数字的最大数
        int max =0;
        if (num.length==0){
            System.out.println("没有数字");
            return ;
        }
        for (int i = 0; i < num.length; i++) {
            if (num[i]>max){
                max = num[i];
            }

        }
        System.out.println(max);
    }
}

数组

数组的定义

  1. int[] nums = new
int[] nums= new int[10];
int numss[]= new int[10];
package Void;

public class Demo04 {
    public static void main(String[] args) {
        //变量的类型,名字,值
        int[] nums= new int[10];
        int numss[]= new int[10];
        int i = 0;
        int sum = 0;

        while ( i<nums.length){
            nums[i]=i+1;
            System.out.println(nums[i]+"");
            i=i+1;
            sum+=i;
        }
        System.out.println(sum);
    }
}

数组的赋值

  1. 动态赋值

            int[] nums ={1,2,3};//创建,定义赋值
    
  2. 静态复制

            int[] num = new int[2];
            num[0] = 1;
            num[1] = 1;
            num[2] = 1;
           	
    

内存分析

堆 (给数组赋值)

存放new对象和数组

栈(创建数组)

存放基本变量类型

数组的使用

增强for循环

        for (int array : arrays) {
            System.out.println(array);
        }

使用方法是 array(数组名字).for,会自己弹出。只能打印数组,不能操作数组下标。

数组的返回值

import java.util.Arrays;

public class Demo03 {
    public static void main(String[] args) {
        int[] arrays = {1, 2, 3, 4, 5,6,7,8};
        int[] resada = reverse(arrays);
        System.out.println(resada);//打印地址
        System.out.println(Arrays.toString(resada));//打印数组
    }

    public static int[] reverse(int[] argss) {
        //反转数组
        int[] result = new int[argss.length];
        for (int i = 0; i < argss.length; i++) {
            result[i] = argss[argss.length - 1 - i];
            System.out.println(result[i]);//打印每个元素
        }
        return result;
    }
}

多维数组

public class Demo04 {
    public static void main(String[] args) {
        int[][] arrayss = {{1, 2}, {2, 3}, {3, 4}, {4, 5}};//就相当于一个四行两列的矩阵 
                                                                     1 2
                                                                     2 3
                                                                     3 4
                                                                     4 5  
        Print(arrayss);

    }

    public static void Print(int array[][]) {
        for (int i = 0; i < array.length; i++) {
            for (int i1 = 0; i1 < array[i].length; i1++) {
                System.out.print(array[i][i1]+" ");
            }
            System.out.println();
        }

        }
    }

Arrays类

  1. Arrays.sort();给数组排序

  2. Arrays.toString(a);打印数组

    package shuzu;
    
    import java.util.Arrays;
    
    public class Demo05 {
        public static void main(String[] args) {
        int[]  a={1,2,3,64654,465465,465};
            System.out.println(Arrays.toString(a));
            Arrays.sort(a);
            System.out.println(Arrays.toString(a));
            Print(a);
        }
        public static void Print(int[] arrays){
            for (int i = 0; i < arrays.length; i++) {
                if (i==0){
                    System.out.print("{");
                }
                if (i==arrays.length-1){
                    System.out.print(arrays[i]+"}");
                }else {
                    System.out.print(arrays[i]+", ");
                }
    
            }
        }
    }
    

冒泡排序

package shuzu;
import java.util.Arrays;
public class Demo06 {
    public static void main(String[] args) {
        int a[]={1,3,2,4,6,5,180,119,1,5};
        maopao(a);

        System.out.println(Arrays.toString(a));
    }
    public static void maopao(int a[]){
        for (int j = 0; j < a.length-1; j++) { //外层循环每跑一次确定一个最大值或者最小值
            boolean flag = false;   //如果没有比较的话,提前截至
            for (int i = 1; i < a.length-j; i++) {  //内层循环,每比较一次,有一个最大值或者最小值,可以少比较一次。
                if (a[i]<a[i-1]){
                    int m=0;
                    m=a[i];
                    a[i]=a[i-1];
                    a[i-1]=m;
                    flag = true;
                }
            }
            if (!flag){
                break;
            }
        }
    }
}

稀疏算法

标签:int,System,static,数组,第五天,public,out
From: https://www.cnblogs.com/inian/p/17993554

相关文章

  • 自动化复习巩固第五天封装数据库及断言方法
     方法1:处理数据库方法说明:数据库配置文件,主要存放数据库连接信息settings.py文件mysql_info={  "host":"xxxxx",  "user":"xxxxx",  "password":"xxxxx",  "port":3306,  "charset":"utf8mb4&......
  • [代码随想录] 第五天
    242.有效的字母异位词https://leetcode.cn/problems/valid-anagram/description/思路:做一个基础版哈希表,哈希函数为key-'a',这样两个字符串的每个字母都会映射在26长的数组中,使用数组自增记录字母出现次数。classSolution{publicbooleanisAnagram(Strings,Stringt){......
  • Exchange学习第五天:高级配置与安全性
    在Exchange学习的第五天,我深入了解了Exchange的高级配置和安全性设置。早上,我学习了如何配置Exchange的连接设置。这包括配置SMTP、POP3和IMAP4服务,以及如何配置连接的安全性。我明白了如何设置SSL证书来加密客户端与服务器的通信,以确保邮件传输的安全。午后,我重点学习了Exchange的......
  • HTML学习第五天:深入理解CSS与样式
    在今天的HTML学习中,我深入了解了CSS和样式的重要性。早上,我开始学习CSS的基础知识。CSS是一种用于描述网页样式的语言,它可以使网页更加美观和易于阅读。通过使用CSS,我可以控制网页中元素的布局、颜色、字体和许多其他样式属性。我学习了如何将CSS与HTML结合使用,以及如何使用不同的......
  • 电子公文系统冲刺第五天
    1.活动图片 2.燃尽图 3.项目进展开展密钥管理模块的性能测试和优化进行身份认证和访问控制功能的测试和调试实现电子公文的查看和编辑功能实现国密算法sm4在文件加密中的应用完善用户管理功能,包括重置密码和账户锁定4.今日问题发现许多bug,但无法找到根本原因;可能出......
  • 公文传输系统冲刺第五天
    成员任务种类是否完成20211102尹子扬数据库连接检测,后端功能维护是20211103白皓宇数据库功能测试是20211122唐嘉浩前端界面优化是20211127李积渊后端功能维护是20211129杨坤数据库功能测试是成员任务数目是否完成20211102尹子扬20......
  • 代码随想录算法训练营第五天| 242.有效的字母异位词 349. 两个数组的交集 1. 两数之
    LeetCode242.有效的字母异位词题目链接: LeetCode242思路: 使用C++自带的库函数,经过排序后进行比较(使用库函数) classSolution{public:boolisAnagram(strings,stringt){if(s.length()!=t.length())returnfalse;sort(s.begin(),......
  • 七天.NET 8操作SQLite入门到实战 - 第五天引入SQLite-net ORM并封装常用方法(SQLiteHel
    前言上一章节我们搭建好了EasySQLite的前后端框架,今天我们的主要任务是在后端框架中引入SQLite-netORM并封装常用方法(SQLiteHelper)。七天.NET8操作SQLite入门到实战详细教程第一天SQLite简介第二天在Windows上配置SQLite环境第三天SQLite快速入门第四天EasySQLite......
  • 学习Springboot的第五天
    一、运行复杂代码通过第四天的学习,解决了粗心错误,瞬间信心倍增,终于能赶赶进度了,此时我想创造的心按耐不住了,现实是残酷的。。。。打开一个复杂点的新工程之后,没有报jdk的问题,可是又出现另外的插件问题我又搜了一下,又是settings.xml的问题,还是得配置一段代码此处是settings.xm......
  • 冲刺第五天
    项目团队团队成员学号龙新超3121004921刘润桦3121004919艾孜海尔江3121004900梁戬希3121004914阿布都拉·阿布都许克3121004686站立式会议站立式会议照片昨天完成的任务团队成员任务龙新超四种角色(经理,总负责人)的代码创建刘润桦......