Java基础经典10道题

目录

for循环的嵌套

题目一: 求101到200之间的素数的个数,并打印

代码分析:

注意点:

题目二:开发验证码

代码分析:

题目三:数组元素的复制

代码分析:

题目四:评委打分

健壮版代码:

代码分析:看源码

注意点:

题目五:数字加密

优化版代码:

代码分析:

题目六:数字解密

代码分析:

题目七:抢红包

优化版代码:

代码分析:

难点:

解释:

题目八:双色球彩票系统

运行结果:

代码分析:

题目九:


for循环的嵌套

题目一: 求101到200之间的素数的个数,并打印

代码:

package com.mohuanan.exercise;

public class ExerciseTest01 {
    public static void main(String[] args) {
        int count = 0;
        for (int i = 101; i <= 200; i++) {
            boolean flag = true;
            for(int j = 2;j < i/2; j++){
                if(i % j == 0){
                    flag = false;
                    break;
                }
            }
            if(flag){
                count++;
                System.out.println(i+"是素数");
            }
        }
        System.out.println("一共"+count+"个素数");
    }
}

代码分析:

这里使用2个for循环,加上if条件判断标志flag是否为true,

注意点:

1.count应该放在if(flag)的里面,当flag为true是,这个数字就是素数

2.第二个for的j变量从2开始

题目二:开发验证码

代码:

package com.mohuanan.exercise;

import java.util.Random;

public class ExerciseTest02 {
    public static void main(String[] args) {
        //因为有52个字母(大小写)
        char[] chs = new char[52];
        for (int i = 0; i < chs.length; i++) {
            if (i <= 25) {
                //根据ASCII码
                //录入大写字母
                chs[i] = (char) (65 + i);//强制转化
            } else {
                //录入小写字母
                chs[i] = (char) (97 - 26 + i);
            }
        }
        String result = "";
        //创建一个Random的对象
        Random r = new Random();

        for(int i = 0;i<4;i++){
            //
            int randomIndex = r.nextInt(52);
            result = result + chs[randomIndex];

        }
        int number = r.nextInt(10);
        result = result + number;
        System.out.println(result);
        
    }

}

代码分析:

1.定义了一个52的char类型的字符串,并用for循环根据ASCII码来给数组的元素赋值(大小写字母),创建了一个Random类,并使用nextInt()方法,进行四次循环,用来随机(大小为数组的长度)出来四个字母,赋值给String类型的变量result,之后再使用Random类中的nextInt()方法产生0到9的随机数,赋值给result

题目三:数组元素的复制

代码:

package com.mohuanan.exercise;

public class ExerciseTest03 {
    public static void main(String[] args) {
        int[] arr = {1,2,3,4,5,6};
        int[] newArr = new int[arr.length];
        for (int i = 0; i < arr.length; i++) {
            newArr[i] = arr[i];
        }
        //遍历输出
        for (int i = 0; i < arr.length; i++) {
            System.out.print(newArr[i]+" ");
        }
        //换行
        System.out.println();
    }
}

代码分析:

这个太简单了,可以自己看上面的代码,这里不再分析

题目四:评委打分

代码:

package com.mohuanan.exercise;

import java.util.Scanner;

public class ExerciseTest04 {
    public static void main(String[] args) {

        int sum = 0;
        int[] arr = new int[6];
        Scanner s = new Scanner(System.in);

        for (int i = 0; i < arr.length; i++) {
            System.out.println("请输入第" + (i + 1) + "个评委的分数");
            arr[i] = s.nextInt();
            sum += arr[i];
        }
        int max = arr[0];
        int min = arr[0];
        for (int i = 1; i < arr.length; i++) {
            if (max < arr[i]) {
                max = arr[i];
            }
            if (min > arr[i]) {
                min = arr[i];
            }
        }
        float score = 0F;
        score = (float) (sum - max - min) / (arr.length - 2);
        System.out.println(score);

    }
}

健壮版代码:

package com.mohuanan.exercise;

import java.util.Scanner;

public class ExerciseTest04 {
    public static void main(String[] args) {

        int sum = 0;
        int[] arr = new int[6];
        Scanner s = new Scanner(System.in);

        for (int i = 0; i < arr.length; ) {
            System.out.println("请输入第" + (i + 1) + "个评委的分数");
            //判断 分数是否合法 
            int scoreArr = s.nextInt();
            sum += arr[i];
            if (scoreArr >= 0 && scoreArr <= 100){
                arr[i] = scoreArr;
                sum += arr[i];
                i++;//注意i++放在这里
            }else{
                System.out.println("您之前输入的分数有误"+"请重新输入第" + (i + 1) + "个评委的分数");
            }

        }
        int max = arr[0];
        int min = arr[0];
        for (int i = 1; i < arr.length; i++) {
            if (max < arr[i]) {
                max = arr[i];
            }
            if (min > arr[i]) {
                min = arr[i];
            }
        }
        float score = 0F;
        score = (float) (sum - max - min) / (arr.length - 2);
        System.out.println(score);

    }
}

代码分析:看源码

注意点:

1.score = (float) (sum - max - min) / (arr.length - 2);这里要加强制转化,如果不加,/运算符会截断数据,从而使结果错误

题目五:数字加密

代码:

package com.mohuanan.exercise;

import java.util.Scanner;

public class ExerciseTest05 {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("请输入您的密码");
        int code = s.nextInt();

        code = handle(code);
        System.out.println(code);
    }

    public static int handle(int code) {
        int result = 0;
        int flag = 1;
        while (code > 0) {
            int temp;
            temp = code % 10;
            temp = (temp + 5) % 10;
            result = result + temp * flag;

            //result = result * 10 + temp;// reversedNumber = reversedNumber * 10 + digit;  // 将最后一位数字添加到反转数字的末尾
            code /= 10;
            flag *= 10;
        }

        result = reversalNum(result);
        return result;

    }

    //数字反转
    public static int reversalNum(int code) {
        int result =0;
        while (code > 0) {
            int temp;
            temp = code % 10;

            result = result * 10 + temp;

            code /= 10;
        }

        return result;
    }

}

优化版代码:

package com.mohuanan.exercise;

public class ExerciseTest06 {
    public static void main(String[] args) {
        int number = 1983;
        //为后面的下面使用number的值
        int temp = number;
        int count = 0;
        //计算数字的长度
        while (number != 0) {
            count++;
            number /= 10;
        }
        //定义一个数组
        int[] arr = new int[count];
        //把数字上的每一位复制到数组中
        while (temp != 0) {
            arr[--count] = temp % 10;
            temp = temp / 10;

        }
        //每位数加上5 并对10求余
        for (int i = 0; i < arr.length; i++) {
            arr[i] = arr[i] + 5;
            arr[i] = arr[i] % 10;
        }
        //所有数字反转
        for (int i = 0;i<arr.length/2; i++) {//arr.length/2 是把它看成一半
            int t;
            t = arr[i];
            arr[i] = arr[arr.length-1-i];//-1是索引 -i是
            arr[arr.length-1-i] = t;
        }
        //拼接
        int newNumber = 0;
        for (int i = 0; i < arr.length; i++) {
            newNumber = newNumber*10 + arr[i];
        }
        //输出打印
        System.out.println(newNumber);

    }
}

代码分析:

题目六:数字解密

代码:

package com.mohuanan.exercise;

public class ExerciseTest07 {
    public static void main(String[] args) {
        int[] arr = {8, 3, 4, 6};

        //反转
        for (int i = 0, j = arr.length - 1; i < j; i++, j--) {//注意这里的循环条件 是 i<j 相当于左右指针
            int temp;
            temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
        //由于之前是加密 余10 +5 所以要判断 并-5
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] >= 0 && arr[i] <= 4) {
                arr[i] = arr[i] + 10;
            }
            arr[i] = arr[i] - 5;
        }
        //拼接
        int number = 0;
        for (int i = 0; i < arr.length; i++) {
            number = number * 10 + arr[i];
        }
        //输出
        System.out.println(number);


    }
}

代码分析:

1.反转数字使用两个指针,循环条件i<j,使用临时变量,作为两个数的交换

2.由于数字的范围只能是5到14(因为一个一位数子加上5的范围,0+5到9+5),所以判断当前数字为0到4时就加上10,

3.根据数组的长度来拼接number = number*10+arr[i]

题目七:抢红包

代码:

package com.mohuanan.exercise;

import java.util.Random;

public class ExerciseTest08 {
    public static void main(String[] args) {
        //数组奖池
        int[] arr = {2, 588, 888, 1000, 10000};
        //定义新数组 用于存储抽奖的结果
        int[] newArr = new int[arr.length];
        Random r = new Random();
        for (int i = 0; i < arr.length; i++) {
            int index = r.nextInt(arr.length);
            int prize = arr[index];
            while(contains(newArr,prize)){
                index = r.nextInt(arr.length);
                prize = arr[index];
            }
            newArr[i] = prize;
        }
        //遍历输出
        for (int i = 0; i < newArr.length; i++) {
            System.out.println("第"+(i+1)+"个抽出的是"+newArr[i]);
        }

    }

    //用于判断奖池是否存在
    public static boolean contains(int[] arr, int prize) {
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] == prize) {
                return true;
            }
        }
        return false;
    }
}

优化版代码:

package com.mohuanan.exercise;

import java.util.Random;

public class ExerciseTest09 {
    public static void main(String[] args) {
        int[] arr = {2, 588, 888, 1000, 10000};
        //打乱数组里的元素
        Random r = new Random();
        for (int i = 0; i < arr.length; i++) {
            //根据 i 和 随机索引 进行交换
            int temp;//临时变量
            int randomIndex = r.nextInt(arr.length);//注意这里要给一个范围 arr.length 因为是从0开始的 所以0 1 2 3 4
            temp = arr[i];
            arr[i] = arr[randomIndex];
            arr[randomIndex] = temp;
        }
        //遍历输出
        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

    }

}

代码分析:

1.使用Random对象中的nextInt()方法,打乱数组的元素,根据i索引于随机索引进行交换

2.相比于上面的代码,少了(假设到了最后的一个数字,要一直索引,直到arr数组里的元素不与索引的相同)

难点:

1.有些人可能会疑惑,为什么这样子可以打乱数组的元素,

解释:

交换两个数字,数组中的元素,没有改变,改变的只是数组的元素的位置,但是数组的元素还是原来的那几个,

题目八:双色球彩票系统

代码:

package com.mohuanan.exercise;

import java.util.Random;
import java.util.Scanner;

public class ExerciseTest010 {
    public static void main(String[] args) {
        //1.生成中奖号码
        int[] arr = createNumber();
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i]+" ");
        }

        System.out.println();

        //2.用户输入号码
        int[] peopleArr = peopleInputNumber();

        //3.计算获奖情况
        //中奖的个数
        int redCount = 0;
        int blueCount = 0;
        //计算中红色球的个数 要长度-1
        for (int i = 0; i < arr.length-1; i++) {
            for(int j = 0;j<peopleArr.length-1;j++){
                //找到就 红色球+1 并退出循环,避免没有必要的运算
                if(arr[i]==peopleArr[j]){
                    redCount++;
                    break;
                }
            }
        }
        //计算中蓝色球的个数
        if(arr[arr.length-1]==peopleArr[peopleArr.length-1]){//注意是下标 所以-1
            blueCount++;
        }
        //根据红蓝球的个数 判断获奖情况
        switch(redCount){
            case 6:
                if(blueCount==1){
                    System.out.println("恭喜你获得1000万 但是这是虚拟的 不要沉迷于");
                }else if(blueCount == 0){
                    System.out.println("恭喜你获得500万 但是这是虚拟的 不要沉迷于");
                }
                break;
            case 5:
                if(blueCount==1){
                    System.out.println("恭喜你获得3000元 但是这是虚拟的 不要沉迷于");
                }else if(blueCount == 0){
                    System.out.println("恭喜你获得200元 但是这是虚拟的 不要沉迷于");
                }
                break;
            case 4:
                if(blueCount==1){
                    System.out.println("恭喜你获得3000元 但是这是虚拟的 不要沉迷于");
                }else if(blueCount == 0){
                    System.out.println("恭喜你获得10元 但是这是虚拟的 不要沉迷于");
                }
                break;
            case 3:
                if(blueCount==1){
                    System.out.println("恭喜你获得10元 但是这是虚拟的 不要沉迷于");
                }
                break;
            case 2:
            case 1:
                if(blueCount==1){
                    System.out.println("恭喜你获得5元 但是这是虚拟的 不要沉迷于");
                }
                break;
            default :
                System.out.println("没中,再接再厉,下次再买,才怪,不要再买了");
        }

    }
    //用户输入号码
    public static int[] peopleInputNumber(){
        //动态定义一个数组
        int[] arr = new int[7];
        Scanner sc = new Scanner(System.in);
        //用户录入6个红球

        for (int i = 0; i < arr.length-1; ) {
            boolean flag = false;
            System.out.print("请输入您的第"+(i+1)+"个红球号码");
            int redNumber = sc.nextInt();
            // 如果录入的数字不存在就赋值   注意数字的范围(1-33)
            if((!judgeNumber(arr,redNumber)) && (redNumber>=1 && redNumber <=33)){
                arr[i] = redNumber;
                i++;//录入新的数字才 i++ 即录入下一个数字
                flag = true;

            }
            if(flag==false){
                System.out.print("您输入的号码出错");
            }
        }
        //用户录入蓝球
        System.out.print("请输入您的蓝球号码:");
        int blueNumber = sc.nextInt();
        // 注意数字的范围(1-16)
        if(blueNumber>=1 && blueNumber <=16){
            arr[arr.length-1] = blueNumber;

        }else{
            while(true){
                System.out.print("您的号码超出范围 请重新输入:");
                blueNumber = sc.nextInt();
                if(blueNumber>=1 && blueNumber <=16){
                    arr[arr.length-1] = blueNumber;
                    break;
                }
            }
        }
        return arr;
    }

    //生成中奖号码
    public static int[] createNumber() {
        //创建一个动态长度为7的数组
        int[] arr = new int[7];
        Random r = new Random();
        //红球号码
        for (int i = 0; i < arr.length - 1; ) {//因为6个红球 一个蓝 所以-1
            int redNumber = r.nextInt(33) + 1;//这里加1 使范围从 1到33

            //如果存在  就再 随机

            //如果不存在 就赋值 并 i++
            if (!judgeNumber(arr, redNumber)) {
                arr[i] = redNumber;
                i++;// 赋值后再i++ 注意i++放在这里 这是新的数字 才让 i++
            }
        }
        //蓝球号码
        int blueNumber = r.nextInt(16) + 1;
        arr[arr.length-1]= blueNumber;
        return arr;
    }

    //判断是否存在
    public static boolean judgeNumber(int[] arr, int redNumber) {
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] == redNumber) {
                return true;
            }
        }
        return false;
    }
}

运行结果:

代码分析:

1. 根据需求,解决问题,分为3个步骤,

        1.1 生成一个获奖的代码,方法: 使用Random对象,动态创建一个长度为7(6红1蓝)的数组,当随机产生的数字要在范围内(红:1-33 蓝:1-16),并判断当前的数字在数组中是否存在,如果不存在,就将当前数字赋值到数组里,并i++,使将6个红球都赋值到数组里,最后再将蓝球号码赋值到数组的最后一个元素

        1.2 用户录入他的号码,方法: 动态创建一个长度为7(6红1蓝)的数组,使用Scanner对象,将用户录入的数字赋值到数组里面,(当随机产生的数字要在范围内(红:1-33 蓝:1-16),并判断当前的数字在数组中是否存在,如果不存在,就将当前数字赋值到数组里)使用while(true)使代码的健壮性更好,当用户输入的数字正确时,break,跳出循环

        1.3 定义redCount,blueCount,使用两个for计算中奖的红蓝球的个数,再根据中奖的红蓝球的个数,使用switch和if的嵌套来得出用户中奖的情况

2. 为了使代码更加的"好",可以增加一些注释和提高代码执行的效率,为了便于以后的维护,变量名和方法名一定要用通俗易懂的命名规则(驼峰原则) ,

题目九:买飞机票

代码:

package com.mohuanan.exercise;
 
import java.util.Scanner;
 
public class ExerciseDemo03 {
    public static void main(String[] args) {
        //创建一个Scanner对象
        Scanner sc = new Scanner(System.in);
        //原来票价
        System.out.println("请输入您的票价");
        int ticket = sc.nextInt();
        //月份
        System.out.println("请输入您的月份");
        int month = sc.nextInt();
        //舱位
        System.out.println("请输入您的舱位,0 头等舱 1经济舱");
        int seat = sc.nextInt();
 
        //旺季
        if(month >= 5 && month <= 10){
            //头等舱
            if(seat == 0){
                ticket = (int)(ticket * 0.9);//数据类型强制转化
 
            }else if(seat == 1){
                ticket = (int)(ticket * 0.85);
            }else{
                System.out.println("没有这个舱位");
            }
        //淡季
        }else if((month >= 1 && month <= 4) || month >= 11 && month <= 12){
            if(seat == 0){
                ticket = (int)(ticket * 0.7);//数据类型强制转化
 
            }else if(seat == 1){
                ticket = (int)(ticket * 0.65);
            }else{
                System.out.println("没有这个舱位");
            }
 
        }else{
            System.out.println("抱歉,您输入的月份不对");
        }
 
        System.out.println(ticket);
    }
}

代码分析:

                使用了if条件的嵌套,逐步细化问题,

题目十:二维数组

代码:

package com.mohuanan.exercise;

public class ExerciseTest012 {
    public static void main(String[] args) {
        //静态定义一个二维数组
        int[][] yearArrArr = {
                {1, 2, 3},
                {4, 5, 6},
                {7, 8, 9},
                {10, 11, 12}
        };
        //计算一年的和
        int yearSum = 0;

        for (int i = 0; i < yearArrArr.length; i++) {
            //int[] quarteArr = yearArrArr[i];
            int sum = getSum(yearArrArr[i]);
            System.out.println("第" + (i + 1) + "个季度和为" + sum);
            yearSum = yearSum + sum;
        }

        System.out.println("一年的和为"+yearSum);
        
    }

    //求每一个季度的销售额
    public static int getSum(int[] arr) {
        int sum = 0;
        for (int i = 0; i < arr.length; i++) {
            sum = sum + arr[i];
        }
        return sum;
    }
}

代码分析:

1.静态定义一个二维数组,使用getSum()方法求每一个季度的和,并返回给sum

2.使用一个for循环,求每一个季度的和,并定义一个yearSum的变量存储一年的和,每一次循环把每一个季度的和赋值给yearSum,并累加

目录

for循环的嵌套

题目一: 求101到200之间的素数的个数,并打印

代码分析:

注意点:

题目二:开发验证码

代码分析:

题目三:数组元素的复制

代码分析:

题目四:评委打分

健壮版代码:

代码分析:看源码

注意点:

题目五:数字加密

优化版代码:

代码分析:

题目六:数字解密

代码分析:

题目七:抢红包

优化版代码:

代码分析:

难点:

解释:

题目八:双色球彩票系统

运行结果:

代码分析:

题目九:买飞机票

代码分析:

题目十:二维数组

代码分析:


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/273598.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python Web开发记录 Day13:Django part7 Ajax入门与案例(任务管理)

名人说&#xff1a;莫道桑榆晚&#xff0c;为霞尚满天。——刘禹锡&#xff08;刘梦得&#xff0c;诗豪&#xff09; 创作者&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 1、Ajax入门①简介②工作原理③优点④缺点⑤使用…

婚恋交友系统开发-PHP书写-uniAPP开发-安装环境7.3-数据库5.6-源码交付-支持二开!

一、确定用户需求 在开发婚恋交友小程序之前&#xff0c;我们需要先确定用户的需求。不同的用户群体对于婚恋交友的需求是不同的&#xff0c;因此我们需要针对不同的用户群体进行调研和分析。 例如&#xff0c;有些用户可能更注重交友的乐趣和体验&#xff0c;而有些用户则更注…

django管理日志记录(日志审计django_admin_log)

环境 django 4.1 用途 django_admin_log 表主要用于以下几个方面&#xff1a; 审计日志: 可以用来记录管理界面的所有操作&#xff0c;以便审计管理员的操作。 故障排除: 可以用来诊断和排除管理界面相关的问题。 数据恢复: 可以用来恢复意外删除的数据。 from django.con…

WMware安装ghost镜像

0.装机工具镜像生成参考 下载安装WePE类似软件 点击导出iso镜像 生成后即可使用&#xff0c;此类装机镜像可用作CD-ROM启动时使用 实体机刻盘启动&#xff0c;虚拟机设置启动CD-ROM路径使用 1.新建虚拟机 2.一直下一步到完成界面 3.点击完成后&#xff0c;编辑虚拟机设置 …

Stable Diffusion WebUI 生成参数:采样器(Sampling method)和采样步数(Sampling steps)

本文收录于《AI绘画从入门到精通》专栏&#xff0c;专栏总目录&#xff1a;点这里。 大家好&#xff0c;我是水滴~~ 本文将深入探讨Stable Diffusion WebUI生成参数中的采样器和采样步数&#xff0c;旨在为读者呈现一个全面而细致的解析。我们将从采样器和采样步数的概念出发&…

【解读】NIST网络安全框架CSF 2.0

2014年&#xff0c;NIST&#xff08;美国国家标准与技术研究所&#xff0c;类似于中国的工信部&#xff09;首次发布了网络安全框架CSF&#xff08;Cybersecurity Framework)&#xff0c;十年后&#xff0c;在2024年2月26日发布了重大更新&#xff08;CSF 2.0&#xff09;&…

idea+vim+pycharm的块选择快捷键

平时开发的时候&#xff0c;有的时候我们想用矩形框住代码&#xff0c;或者想在某列上插入相同字符 例如下图所示&#xff0c;我想在22-24行的前面插入0000 1. Idea的快捷键&#xff1a;option 鼠标 2. Pycharm的快捷键&#xff1a;shift option 鼠标 2. Vim 块选择 v/V/c…

WRF模型教程(ububtu系统)-WPS(WRF Pre-Processing System)概述

一、WPS简介 WRF 预处理系统 (WRF Pre-Processing System&#xff0c;WPS) &#xff0c;集成了基于Fortran和C编写的程序&#xff0c;这些程序主要用于处理输入到real.exe的数据。WPS主要有三个程序和一些辅助程序。 二、各程序介绍 主要的程序为geogrid.exe、ungrib.exe、met…

在Latex中优雅的插入svg图片(Ubuntu22.04)

文章目录 一、前言二、准备工作三、脚本编程四、结论 一、前言 在 LaTeX \LaTeX LATE​X 中&#xff0c;插入图片常用的为 figure 环境加 \includegraphics 命令&#xff1a; \begin{figure}[!htbp]\centering\includegraphics[width\textwidth]{图片名.jpg/jpeg/png/pdf}\c…

EDI在汽车主机厂配送流程中的应用

汽车主机厂的汽车配送流程始于汽车 “生产结束 ” &#xff0c;止于 “交付给经销商 ” 。在这个流程中&#xff0c;企业作为主机厂的下游供应商&#xff0c;与主机厂的物流服务供应商之间的信息交换将会变得十分重要。 配送流程&#xff1a;运输订单以及报告 汽车主机厂提供预…

Jenkins 一个进程存在多个实例问题排查

Jenkins 一个进程存在多个实例问题排查 最近Jenkins升级到2.440.1​版本后&#xff0c;使用tomcat​服务部署&#xff0c;发现每次定时任务总会有3-4个请求到我的机器人上&#xff0c;导致出现奇奇怪怪的问题。 问题发现 机器人运行异常&#xff0c;总有好几个同时请求的服务。…

深入解析MVCC:多版本并发控制的数据库之道

✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天开心哦&#xff01;✨✨ &#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; ✨✨ 帅哥美女们&#xff0c;我们共同加油&#xff01;一起进步&am…

vite打包流程和原理

文章目录 打包原理Vite比Webpack快&#xff1f;在生产环境下的表现启动项目后&#xff0c;完成加载比较慢&#xff1f;Esbuild & Rollup热更新 打包原理 vite利用了ES module这个特性&#xff0c;使用vite运行项目时&#xff0c;首先会用esbuild进行预构建&#xff0c;将所…

OpenCV Steger算法提取条纹中心线

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 Steger 算法是一种常用的图像边缘检测算法,可以用于提取图像中的中心线或边缘信息。它的理论假设是:条纹的亮度是按照高斯分布呈现的,即中心亮两侧渐暗。 其计算过程如下所述: 1、首先,我们需要计算每个点Hess…

Android Studio实现内容丰富的安卓美食管理发布平台

获取源码请点击文章末尾QQ名片联系&#xff0c;源码不免费&#xff0c;尊重创作&#xff0c;尊重劳动 项目编号079 1.开发环境android stuido jdk1.8 eclipse mysql tomcat 2.功能介绍 安卓端&#xff1a; 1.注册登录 2.查看公告 3.查看美食信息 4.发布美食信息 5.收藏美食信息…

【机器学习】函数

sigmoid函数 import matplotlib.pyplot as plt import numpy as npdef sigmoid(x):return 1/(1np.exp(-x))def plot_sigmoid():# param:起点&#xff0c;终点&#xff0c;间距x np.arange(-10, 10, 0.1) #起点&#xff0c;终点&#xff0c;间距y sigmoid(x)plt.plot(x, y)plt…

小红书推广费用一般多少?CloudNEO:7000+达人资源,助您一臂之力

小红书作为中国知名的社交电商平台&#xff0c;吸引了众多品牌和商家的关注&#xff0c;成为了推广产品和服务的热门平台之一。但是&#xff0c;很多人对于在小红书上进行推广的费用了解不多。那么&#xff0c;小红书推广费用一般是多少呢&#xff1f;下面让我们来揭秘一下小红…

ASP.NET通过Appliaction和Session统计在人数和历史访问量

目录 背景: Appliaction&#xff1a; Session&#xff1a; 过程&#xff1a; 数据库&#xff1a; Application_Start&#xff1a; Session_Start&#xff1a; Session_End&#xff1a; Application_End&#xff1a; 背景: 事件何时激发Application_Start在调用当前应用…

Django 反向解析路由

app2.urls.py from django.urls import path, re_path from . import viewsurlpatterns [path(index, views.index, nameindex),path(url_reverse, views.url_reverse, nameapp2_url_reverse), # 使用reverse()方法反向解析 ,name对于视图的reverse("app2_url_reverse&…

HTML5球体下落粒子爆炸特效

HTML5球体下落粒子爆炸特效&#xff0c;源码由HTMLCSSJS组成&#xff0c;双击html文件可以本地运行效果&#xff0c;也可以上传到服务器里面 下载地址 HTML5球体下落粒子爆炸特效
最新文章