java学习--day5 (java中的方法、break/continue关键字)
文章目录
- day4作业
- 今天的内容
- 1.方法【重点】
- 1.1为什么要有方法
- 1.2其实已经见过方法
- 1.3定义方法的语法格式
- 1.3.1无参无返回值的方法
- 1.3.2有参无返回值的方法
- 1.3.3无参有返回值的方法
- 1.3.4有参有返回值的方法
- 2.break和continue关键字
- 2.1break;
- 2.2continue;
- 3.案例关于方法的练习
day4作业
1.switch后面的小括号里面的 数据类型是那种数据类型int byte short String char enum
2.if-else的语法格式if (布尔表达式) {语句体1} else {语句体2}
3.switch-case的语法格式switch () {case 常量1:语句体1;break;case 常量2:语句体2;break;defautl:语句体n;}4.逻辑的短路原则逻辑与的短路原则:当条件为false的时候,后面条件就不再执行了逻辑或的短路原则:当条件为true的时候,后面条件就不再执行了
5.while循环的语法格式及执行流程while (布尔表达式) {循环体;}执行流程: 当布尔表达式为true的时候,执行循环体,再次回到while关键字,再次判断布尔表达式。如果表达式为false的话,循环结束
6.while和do-while的循环的区别while先判断表达式是否为true或者false,再决定是否执行循环体。但是do-while先执行一次循环体。
7.for循环的语法格式和执行流程for (表达式1; 表达式2; 表达式3) {循环体}执行流程: 先执行表达式1然后再判断表达式2,如果表达式2为true,就会执行循环体,执行表达式3,再次回到表达式2进行判断.....
8.使用for循环打印99乘法表for (int i = 1; i <= 9; i++) {for (int j = 1; j <= i; ) {System.out.print(j + "*" + i + "=" + i*j);}System.out.println();}
循环体
1.* 第一行 3个空格 1个* 2* i-1*** 第二行 2个空格 3个****** 第三行 1个空格 5个*
******* 第四行 0个空格 7个*2.
*******
*****
***
*
3.***************
package com.qfed.a_for;public class Demo1 {public static void main(String[] args) {/*** i=1 1<5 true * 进入到内层第一个for循环* j=1 1<=3 true 打印第一个空格 j++* j=2 2<=3 true 打印第二个空格 j++* j=3 3<=3 true 打印第3个空格 j++* j=4 4<=3 false 循环结束* 进入倒内层的第二个for循环* k=1 1<=1 打印第一个* k++* k=2 2<=1 false 循环 结束 换行 i++* i=2...* * * */for (int i = 1; i < 5; i++) {//控制是行数 for (int j = 1; j <= 4 - i; j++) {//打印的空格的列System.out.print(" ");}for (int k = 1; k <= (2 * i - 1); k++) {//打印*这个列System.out.print("*");}System.out.println();//换行}}
}
package com.qfed.a_for;public class Demo2 {public static void main(String[] args) {//打印倒的直角三角形//学会自习分析for (int i = 4; i > 0; i--) {for (int j =1; j <= (2 * i - 1); j++) {System.out.print("*");}System.out.println();}}}
package com.qfed.a_for;public class Demo3 {public static void main(String[] args) {for (int i = 1; i <= 5; i++) {//控制行数for (int j = 5 - i; j > 0; j--) {System.out.print(" ");}for (int j = 1; j <= i; j++) {System.out.print("*");}System.out.println();}}}
今天的内容
方法
方法会贯穿咱们整个职业生涯
1.方法【重点】
1.1为什么要有方法
开发中如果出现了大量的重复的代码,或者是重复的功能,循环满足不了咱们的需求了。
可以使用方法
1.代码臃肿
2.可读性差
3.维护性差
建议用方法即可
1.2其实已经见过方法
public static void main (String args) {方法体
}
这个方法是Java给咱们提供好的方法的名字叫mainpublic static : 不要问void :返回值 空的 没有返回值的main: 就是方法的名字方法的名字的命名和变量的命名一样。1.首字母小写2.使用数字,字母,下划线 ,$等组成的,但是数字不能开头3.使用小驼峰,命名规则,或者使用下划线进行拼接4.见名知意5.不能使用Java的关键字main的后面跟了一个小括号小括号中可以带参数小括号后面跟着的是一个大括号学会抄
1.3定义方法的语法格式
无参无返回值的方法
有参无返回值的方法
无参有返回值的方法
有参有返回值的方法
1.3.1无参无返回值的方法
语法格式:
public static void 方法的名字 () {方法体; }
注意事项:
1.方法的声明必须在类中,在main主函数外面。
2.方法的调用必须在主函数中,使用的是方法的名字来调用的
package com.qfed.b_method;public class Demo2 {public static void main(String[] args) {//在main主函数调用方法//printEat();printEat();}//在main方法的外部声明一个新的方法//无参 无返回值的方法public static void printEat () {for (int i = 0; i < 10; i++) {System.out.println("中午吃梅菜扣肉");}}}
练习:写一个方法,打印出来99乘法表,使用无参无返回值的方法
package com.qfed.b_method;public class Demo3 {public static void main(String[] args) {printNineNineTable();printNineNineTable();}public static void printNineNineTable () {for (int i = 1; i <= 9; i++) {for (int j = 1; j <= i; j++) {System.out.print(j + "*" + i + "=" + j * i);} System.out.println();}}}
练习:逢7过,使用方法的写法
package com.qfed.b_method;public class Demo3 {public static void main(String[] args) {printNineNineTable();//printNineNineTable();printPassSeven();}public static void printNineNineTable () {for (int i = 1; i <= 9; i++) {for (int j = 1; j <= i; j++) {System.out.print(j + "*" + i + "=" + j * i);} System.out.println();}}//逢7过public static void printPassSeven () {for (int i = 1; i < 101; i++) {if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7) {System.out.println("过");} else {System.out.println(i);}}}}
总结:
1.新建一个类
2.在类中书写main主函数
3.在main主函数的外面写一个方法
4.在main主函数调用方法
1.3.2有参无返回值的方法
语法格式:
public static void 方法的名字 (数据类型 参数名字, 数据类型 参数名字, ...) {方法体; }
注意事项:
1.方法的声明处的参数是形参。方法的调用处是实参
实参赋值给形参
2.方法在调用的时候一定要注意方法声明处形参的数据类型,是一一对应的关系
package com.qfed.b_method;public class Demo4 {public static void main(String[] args) {printHello(8);//在方法额调用处 18啥意思?//18是实际参数 又叫实参 会讲实参赋值给形参,让形参具备真实的意义//将18赋值给方法的声明处的那个变量 num}//打印4遍的hello//此时方法的声明处 int num 是形式参数 又叫形参//只是一个形式而已public static void printHello (int a) {for (int i = 0; i < a; i++) {System.out.println("hello");}}}
package com.qfed.b_method;public class Demo5 {public static void main(String[] args) {add(5, 6);//将5赋值给a 将6 赋值给 baddDouble(45.3, 566.9, 89.3);printStr("大漠孤烟直");concate("落霞与孤鹜齐飞,", "秋水共长天一色");print1(1, "狗蛋", 2.3, 'a');}//打印两个int类型数据的和//a 和 b 是形式参数,是占着位置的变量public static void add (int a, int b) {System.out.println(a + b);}//打印3个doule数据类型的和public static void addDouble (double d1, double d2, double d3) {System.out.println(d1 + d2 + d3);}//打印一个字符串public static void printStr (String str) {System.out.println(str);}//字符串拼接public static void concate (String str1, String str2) {System.out.println(str1 + str2);}//参数类型是不一致的情况public static void print1 (int i1, String str1,double d1, char c1) {System.out.println(i1 + str1 + d1 + c1 );}}
package com.qfed.b_method;public class Demo6 {public static void main(String[] args) {printChengFaBiao(100);}public static void printChengFaBiao (int num) {for (int i = 1; i <= num; i++) {for (int j = 1; j <= i; j++) {System.out.print(j + "*" + i + "=" + j * i);}System.out.println();}}}
上午回顾
1.无参无返回值的方法
public static void 方法的名字() {方法体
}
2.有参无返回值的方法
public static void 方法的名字 (数据类型 形参, 数据类型 形参, ....) {}
调用的时候在main主函数中 使用方法名字来调用即可。
1.3.3无参有返回值的方法
语法格式:
public static 数据类型 方法的名字 () {return 返回值;//这个返回值的数据类型必须和方法的声明的地方的数据类型保持一致 }
注意事项:
1.使用关键自 return
2.return的后面不能再写代码了
3.有返回值的方法在调用的时候,要将返回值的值是可以给一个变量的
4.无返回值的方法,只是打印一下而已。 是不能给一个变量的
package com.qfed.b_method;public class Demo7 {public static void main(String[] args) {printNum();//这个只是单纯的打印显示而已int i1 = giveNum();//可以获取出来进行下一步的操作System.out.println(i1);//拿到值以后做下一步的操作System.out.println(i1 + 15);//20String string = giveString();System.out.println(string);}//定义一个方法,带有返回值的方法public static int giveNum () {//This method must return a result of type intreturn 5;} public static void printNum () {System.out.println(5);}//返回值是字符串类型的数据public static String giveString () {String str = "你才觉得时间空间";return str;}}
1.3.4有参有返回值的方法
语法格式:
public static 数据类型 方法的名字 (数据类型 形参, 数据类型 形参,...) {return 返回值; }
package com.qfed.b_method;public class Demo8 {public static void main(String[] args) {int sum = add(3, 4, 5);System.out.println(sum);add1(3, 4, 5);System.out.println(judge(67.6, 89.8));//false}//求三个int类型数据的和 带有返回值的方法public static int add (int a, int b , int c) {return a + b + c;}public static void add1 (int a, int b, int c) {System.out.println(a + b + c);}//我现在脑海中有一个问题?这个形参和返回值类型有关系吗?//没有任何关系的//我想判断两个double类型的数据 如果 a 比 b大返回值一个true//反之返回falsepublic static boolean judge (double a, double b) {if (a > b) {return true;} else {return false;}}}
练习:
无参无返回值的方法:
package com.qfed.b_method;import java.util.Scanner;public class Demo9 {public static void main(String[] args) {String str = isOddOrEven1();System.out.println(str);}//判断一个数是否是偶数和奇数,不带参数的//无参无返回值的方法public static void isOddOrEven () {Scanner scanner = new Scanner(System.in);System.out.println("请输入一个整数:");int i = scanner.nextInt();if (i % 2 == 0) {System.out.println("该数是偶数!!!");} else if (i % 2 == 1) {System.out.println("该数是奇数!!!");}}//无参有返回值的方法public static String isOddOrEven1 () {Scanner scanner = new Scanner(System.in);System.out.println("请输入一个整数:");int i = scanner.nextInt();if (i % 2 == 0) {return "该数是偶数!!!";} else {return "该数是奇数!!!";}}}
package com.qfed.b_method;import java.util.Scanner;public class Demo10 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入一个整数:");int i = scanner.nextInt();isOddOrEven(i);}//有参无返回值的方法public static void isOddOrEven (int a) {if (a % 2 == 0) {System.out.println("该数是偶数!!!");} else if (a % 2 == 1) {System.out.println("该数是奇数!!!");}}}
总结:
1.无参数无返回值的方法
脑海里面必须有无参无返回值方法的语法格式
2.有参无返回值的方法
3.无参有返回值的方法
4.有参有返回值的方法以后方法天天写!!!你现在不会,慢慢就带着会了
2.break和continue关键字
字面意思:
break: 终止 打断
continue: 继续
2.1break;
语法格式:
break;
注意事项:
break关键字 只能在switch-case中或者循环中使用
package com.qfed.c_breakandcontinue;public class Demo1 {public static void main(String[] args) {//break; 终止打断的意思for (int i = 0; i < 5; i++) {System.out.println("嘻嘻哒");break;//终止 打断的意思}System.out.println("呵呵哒");}
}
package com.qfed.c_breakandcontinue;public class Demo2 {public static void main(String[] args) {for (int i = 1; i < 100; i++) {if (i % 5 == 0) {System.out.println(i);//5break;}System.out.println(i);//1 2 3 4}}//今天你们试一下 for循环里面使用switch-case//语法格式完全可以的,但是swicth-case里面的break;不会终止循环}
2.2continue;
语法格式:
continue;
跳过本次循环,继续下一次的循环
只能在循环中使用
package com.qfed.c_breakandcontinue;public class Demo4 {public static void main(String[] args) {/*** i=4 4<8 true 4%5==0 false sout(4) i++* i=5 5<8 true 5%5==0 true continue 结束了本次循环 i++* i=6 6<8 true 6%5==0 falsesout(6) i++* i=7 7<8 true 7%5==0false sout(7) i++* i=8 8<8循环结束*/for (int i = 4; i < 8; i++) {if (i % 5 == 0) {continue;//结束本次循环执行下次的循环}System.out.println(i);}}}
1-100带7 的不打印,使用continue
package com.qfed.c_breakandcontinue;public class Demo5 {public static void main(String[] args) {for (int i = 1; i < 101; i++) {if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7) {continue;}System.out.println(i);}}
}
3.案例关于方法的练习
1.写一个方法,找出两个int类型最大值,并输出打印最大值
package com.qfed.d_method;public class Demo1 {public static void main(String[] args) {//max();//max1(89, 67);//System.out.println(max2());System.out.println(max3(150, 250));}//求两个int的最大值的//无参无返回值的方法public static void max () {int a,b;a = 45;b = 69;if (a >= b) {System.out.println(a);} else {System.out.println(b);}}//有参无返回值的方法public static void max1(int a, int b) {if (a >= b) {System.out.println(a);} else {System.out.println(b);}}//无参有返回值的方法public static int max2 () {int a,b;a = 45;b = 32;if (a >= b) {return a;} else {return b;}}//有参有返回值的方法public static int max3 (int a, int b) {if (a >= b) {return a;} else {return b;}}}
案例2:控制台输入一个字符,判断这个字符是否是大写的英文字符,如果是打印是大写的,如果不是打印不是大写的英文字符
package com.qfed.d_method;import java.util.Scanner;public class Demo2 {public static void main(String[] args) {//控制台输入Scanner scanner = new Scanner(System.in);System.out.println("请输入一个字符:");char c1 = scanner.next().charAt(0);System.out.println(isUpper(c1));}//判断一个字符是否是大写的字符public static String isUpper (char c1) {//if (c1 >= 'A' && c1 <= 'Z') {if (c1 >= 65 && c1 <= 90) {return "是大写的字母";} else {return "不是大写字母";}}}
案例3:判断一个字符是否是数字字符
package com.qfed.d_method;import java.util.Scanner;public class Demo3 {public static void main(String[] args) {isNumber();}//判断一个字符是否是数字字符public static void isNumber () {Scanner scanner = new Scanner(System.in);System.out.println("请输入一个字符:");char c1 = scanner.next().charAt(0);if (c1 >= '0' && c1 <= '9') {System.out.println("是数字字符");} else {System.out.println("不是数字字符");}}}
相关文章:
java学习--day5 (java中的方法、break/continue关键字)
文章目录 day4作业今天的内容1.方法【重点】1.1为什么要有方法1.2其实已经见过方法1.3定义方法的语法格式1.3.1无参无返回值的方法1.3.2有参无返回值的方法1.3.3无参有返回值的方法1.3.4有参有返回值的方法 2.break和continue关键字2.1break;2.2continue; 3.案例关于方法的练习…...

MFC主框架和视类PreCreateWindow()函数学习
在VC生成的单文档应用程序中,主框架类和视类均具有PreCreateWindow函数; 从名字可知,可在此函数中添加一些代码,来控制窗口显示后的效果; 并且它有注释说明, Modify the Window class or styles here by…...

for forin forof forEach map区别
一、总结 相同点:都是串行遍历。不同点: 二、for of循环 设计目的:遍历所有数据结构的统一方法。原理:会调用数据结构的Symbol.iterator方法。 只要数据结构定义了Symbol.iterator属性,就能用for of遍历它的成员。…...
特殊时间(蓝桥杯)
特殊时间 问题描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 2022年2月22日22:20 是一个很有意义的时间, 年份为 2022 , 由 3 个 2 和 1 个 0 组成, 如果将月和日写成 4 位, 为 0222 , 也是由 3 个 2 和 1 个 0 组 成…...

VUE路由与nodeJS环境搭建
VUE路由 Vue路由是Vue.js提供的路由管理工具,它允许我们在应用程序中实现页面之间的导航,从而使单页面应用程序的开发更加方便。通过Vue路由,我们可以轻松地创建和管理多个视图,并在这些视图之间导航。 Vue路由使用HTML5的Histo…...

抗锯齿的线
抗锯齿的线 右下角的时候h是0,到顶部 h是1,然后中间y相距4个像素,那dy就是0.25 如果让h abs(fract(h - 0.5) - 0.5) 中间一行0.5,第一行 第三行都是0.25,两端都是0 根据插值来看 这里是 如果用h/dy 那么第一行以上࿰…...

如何使用高压放大器驱动高容性负载
使用高压放大器驱动高容性负载是一个具有挑战性的任务,需要仔细考虑电路设计和操作技巧。下面西安安泰Aigtek将为您介绍一些关于如何使用高压放大器驱动高容性负载的方法和注意事项。 首先,让我们了解一下高容性负载。高容性负载通常指电容值较大的负载元…...

kubernetes集群证书过期启动失败问题解决方法
1、问题现象 执行kubectl命令异常报告 [rootk8s-master1 ~]# kubectl get node The connection to the server 192.168.227.131:6443 was refused - did you specify the right host or port? [rootk8s-master1 ~]# 查看etcd的日志,报错信息如下 {"level&…...
nvm使用的注意事项和常用命令。
nvm官网下载地址:nvm文档手册 - nvm是一个nodejs版本管理工具 - nvm中文网 (uihtm.com) 参考网址:(14 封私信 / 80 条消息) 如何通过 nvm 安装多版本 nodejs?npm 安装失败了怎么办? - 知乎 (zhihu.com) nvm目录下,修…...
代码大全阅读随笔(七)
循环控制 循环控制会出现什么样的错误,任何一种答案都可以归结到下面所说的问题之一:忽略或者错误的对循环执行初始化,忽略了对累加变量或者其他与循环有关变量执行初始化,不正确的嵌套,不正确的循环终止,忽…...

用户与权限管理
文章目录 用户与权限管理1. 用户管理1.1 MYSQL用户1.2 登录MySQL服务器1.3 创建用户1.4 修改用户1.5 删除用户1.6 修改密码1. 修改当前用户密码2. 修改其他用户密码 1.7 MYSQL8密码管理 2. 权限管理2.1 权限列表2.2 授予权限的原则2.3 授予权限2.4 查看权限2.5 收回权限 3. 权限…...

mysql集群使用nginx配置负载均衡
参考链接:https://mu-sl.com//archives/mysql%E9%9B%86%E7%BE%A4%E4%BD%BF%E7%94%A8nginx%E9%85%8D%E7%BD%AE%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1 配置文件nginx_tcp.conf 示例 load_module modules/ngx_stream_module.so;stream{upstream tcpssh{hash $remote_…...

蓝桥杯每日一题2023.9.21
蓝桥杯2021年第十二届省赛真题-异或数列 - C语言网 (dotcpp.com) 题目描述 Alice 和 Bob 正在玩一个异或数列的游戏。初始时,Alice 和 Bob 分别有一个整数 a 和 b,有一个给定的长度为 n 的公共数列 X1, X2, , Xn。 Alice 和 Bob 轮流操作࿰…...

知识联合——函数指针数组
前言:小伙伴们又见面啦,今天我们来讲解一个将函数,指针,数组这三个C语言大将整合在一起的知识——函数指针数组。同时来告诉小伙伴们我们上一篇文章的伏笔——函数指针的具体用法。 目录 一.什么是函数指针数组 二.函数指针数组…...
【Nginx26】Nginx学习:日志与镜像流量复制
Nginx学习:日志与镜像流量复制 总算到了日志模块,其实这个模块的指令之前我们就用过了,而且也是是非常常见的指令。相信这一块的学习大家应该不会有什么难度。另一个则是镜像功能,这个估计用过的同学就比较少了,不过也…...

Stability AI发布基于稳定扩散的音频生成模型Stable Audio
近日Stability AI推出了一款名为Stable Audio的尖端生成模型,该模型可以根据用户提供的文本提示来创建音乐。在NVIDIA A100 GPU上Stable Audio可以在一秒钟内以44.1 kHz的采样率产生95秒的立体声音频,与原始录音相比,该模型处理时间的大幅减少…...

华为OD机试 - 计算面积 - 逻辑分析(Java 2023 B卷 100分)
目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷&#…...

Ganache本地测试网+cpolar内网穿透实现公网访问内网
文章目录 前言1. 本地环境服务搭建2. 局域网测试访问3. 内网穿透3.1 ubuntu本地安装cpolar内网穿透3.2 创建隧道3.3 测试公网访问 4. 配置固定二级子域名4.1 保留一个二级子域名4.2 配置二级子域名4.3 测试访问公网固定二级子域名 前言 网:我们通常说的是互联网&am…...
【每日一题】ARC071D - ### | 前缀和 | 简单
题目内容 原题链接 给定一个长度为 n n n 的数组 a a a 和一个长度为 m m m 的数组 b b b 。 从数组 a a a 中挑出两个数,作为两条平行于 y y y 轴的直线,数组 b b b 中挑出两个数,作为两条平行于 x x x 轴的直线,问这四…...
(Vue2)VueRouter
VueRouter 修改地址栏路径时,切换显示匹配的组件 使用52: 1下载版本3.6.5(Vue3对应版本4.X) npm add vue-router3.6.5 2引入 import VueRouter from vue-router 3安装注册 Vue.use(VueRouter) 4创建路由对象 const route…...

DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...

【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
如何配置一个sql server使得其它用户可以通过excel odbc获取数据
要让其他用户通过 Excel 使用 ODBC 连接到 SQL Server 获取数据,你需要完成以下配置步骤: ✅ 一、在 SQL Server 端配置(服务器设置) 1. 启用 TCP/IP 协议 打开 “SQL Server 配置管理器”。导航到:SQL Server 网络配…...