当前位置: 首页 > news >正文

常用类(五)System类

(1)System类常见方法和案例:

(1)exit:退出当前程序

我们设计的代码如下所示:

package com.ypl.System_;public class System_ {public static void main(String[] args) {//exit: 退出当前程序System.out.println("ok1");//1.exit(0)表示程序退出//2. 0表示一个状态,正常的状态System.exit(0);  System.out.println("ok2");}
}

我们运行之后如下所示:

 

 (2)arraycopy: 复制数组元素,比较适合底层调用,一般使用Arrays.copyOf完成复制数组。

我们设计的代码如下所示:

package com.ypl.System_;import java.util.Arrays;public class System_ {public static void main(String[] args) {int[] src={1,2,3};int[] dest= new int[3]; //dest当前是{0,0,0}int[] dest1= new int[3]; //dest当前是{0,0,0}int[] dest2= new int[3]; //dest当前是{0,0,0}//1.主要是搞清楚这五个参数的含义//2.src – the source array.  (源数组)// srcPos – starting position in the source array. (从源数组的哪个索引位置开始拷贝)// dest – the destination array.  (目标数组,即把源数组的数据拷贝到哪个数组)// destPos – starting position in the destination data. (把源数组的数据拷贝到目标数组的哪个索引)// length – the number of array elements to be copied. (从源数组拷贝多少个数据到目标数组)System.arraycopy(src,0,dest,0,3); //[1,2,3]System.out.println("dest="+ Arrays.toString(dest));System.arraycopy(src,0,dest1,1,2);//[0,1,2]System.out.println("dest1="+Arrays.toString(dest1));System.arraycopy(src,0,dest2,1,src.length-1);//[0,1,2]System.out.println("dest2="+Arrays.toString(dest2));}
}

运行之后如下所示:

 

 (3)currentTimeMillens:返回当前时间距离1970-1-1 的毫秒数

我们设计的代码如下所示:

package com.ypl.System_;import java.util.Arrays;public class System_ {public static void main(String[] args) {//currentTimeMillens:返回当前时间距离1970-1-1的毫秒数//System.out.println(System.currentTimeMillis());}
}

我们运行之后如下所示:

 我们从菜鸟教程的API查看如下所示:

(4)gc:运行垃圾回收机制 System.gc( ).

(2)BigInteger和BigDecimal

应用场景:

(1)BigInteger适合保存比较大的整型

(2)BigDecimal适合保存精度更高的浮点型(小数)

BigInteger

我们查看BigInteger的类图如下所示:

我们发现BigInteger里面有许多方法。

我们设计代码如下所示:

package com.ypl.bignum;import java.math.BigInteger;public class BigInteger_ {public static void main(String[] args) {long l=23788888999l;System.out.println("l="+l);//当我们编程中,需要处理很大的整数,long 不够用//可以使用BigInteger的类来搞定long l1=2378888899999999l;System.out.println("l1="+l1);BigInteger bigInteger = new BigInteger("237888889999999999999");BigInteger bigInteger1 = new BigInteger("100");System.out.println(bigInteger);//1.在对BigInteger进行加减乘除的时候,需要使用对应的方法,不能直接进行 + - * ///2.可以创建一个要操作的BigInteger,然后进行相应操作。BigInteger add = bigInteger.add(bigInteger1);System.out.println(add); //加BigInteger subtract = bigInteger.subtract(bigInteger1);System.out.println(subtract); //减法BigInteger multiply = bigInteger.multiply(bigInteger1);System.out.println(multiply); //乘BigInteger divide = bigInteger.divide(bigInteger1);System.out.println(divide); //除法}
}

 我们运行之后如下所示:

我们下来查看BigDecimal:

我们设计的代码如下所示:

package com.ypl.bignum;import java.math.BigDecimal;public class BigDecimal_ {public static void main(String[] args) {//当我们需要保存一个精度很高的数时,double不够用//可以使用BigDecimaldouble d=1999.1111111111111d;System.out.println(d);double c=1999.5555555555555555555; //会进行精度的缩减System.out.println(c);BigDecimal bigDecimal = new BigDecimal("1999.555555555555555555");BigDecimal bigDecimal1 = new BigDecimal("1.1");System.out.println(bigDecimal);//1.如果对BigDecimal进行运算,比如加减乘除,需要使用对应的方法//2.创建一个需要操作的BigDecimal然后调用相应的方法即可BigDecimal add = bigDecimal.add(bigDecimal1); //加System.out.println(add);BigDecimal subtract = bigDecimal.subtract(bigDecimal1);//减System.out.println(subtract);BigDecimal multiply = bigDecimal.multiply(bigDecimal1); //乘System.out.println(multiply);BigDecimal divide = bigDecimal.divide(bigDecimal1);//除,可能抛出异常,在算除法的时候是可能除不尽的,// 除不尽会抛出异常,除尽则不会System.out.println(divide);}
}

我们运行之后如下所示:

发现抛出异常,我们的解决方案如下所示:

package com.ypl.bignum;import java.math.BigDecimal;public class BigDecimal_ {public static void main(String[] args) {//当我们需要保存一个精度很高的数时,double不够用//可以使用BigDecimaldouble d=1999.1111111111111d;System.out.println(d);double c=1999.5555555555555555555; //会进行精度的缩减System.out.println(c);BigDecimal bigDecimal = new BigDecimal("1999.555555555555555555");BigDecimal bigDecimal1 = new BigDecimal("1.1");System.out.println(bigDecimal);//1.如果对BigDecimal进行运算,比如加减乘除,需要使用对应的方法//2.创建一个需要操作的BigDecimal然后调用相应的方法即可BigDecimal add = bigDecimal.add(bigDecimal1); //加System.out.println(add);BigDecimal subtract = bigDecimal.subtract(bigDecimal1);//减System.out.println(subtract);BigDecimal multiply = bigDecimal.multiply(bigDecimal1); //乘System.out.println(multiply);//   BigDecimal divide = bigDecimal.divide(bigDecimal1);//除,可能抛出异常,在算除法的时候是可能除不尽的,// 除不尽会抛出异常,除尽则不会//在调用divide方法时,指定精度即可,BigDecimal.ROUND_CEILING//如果有无限循环小数就会保留分子的精度BigDecimal divide = bigDecimal.divide(bigDecimal1,BigDecimal.ROUND_CEILING);System.out.println(divide);}
}

我们运行之后如下所示:

我们发现完美解决。 

 (3)Date介绍

1.Date:精确到毫秒,代表特定的瞬间

2.SimpleDateFormat:格式和解析日期的类

SimpleDateFormat格式化和解析日期的具体类。它允许进行格式化(日期-->文本)、解析(文本->日期)和规范化

我们查看类的关系继承图:

 我们查看他的方法,发现里面有很多方法,同时也有很多过时的方法:

 我们了解里面properties的相关:properties指的并不是我们的字段,而是如果我们的类里面有get和set的相关方法,就会把后面的名称自动当作一个properties。

我们通过具体案例来进行了解:
我们设计代码如下所示:

package com.ypl.data_;public class Dog {private String name;private int age;public Dog(String name, int age) {this.name = name;this.age = age;}public void cry(){}class Air{}//说明一下diagram IDEA properties 的含义public void  setAddress(String address){}public double getSalary( ){return 1.1;}
}

我们点击了properties之后,我们发现出现salary和address.

 我们没有点击之后,我们发现出现如下所示:出现了setAddress和getSalsry方法。

我们设计的代码如下所示:

package com.ypl.data_;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class Date01 {public static void main(String[] args) throws ParseException {//1.获取当前系统时间//2.这里的Date类是在java.util包//3.默认输出的日期格式是国外的方式,因此通常需要对格式进行转换Date d1 = new Date(); //获取当前系统时间System.out.println("当前日期="+d1);//1.创建SimpleDateFormat对象,可以指定相应的格式//2.这里的格式使用的字母是规定好,不能乱写SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss E");String format = sdf.format(d1); //format:将日期转换成指定格式的字符串System.out.println("当前日期="+format);Date d2 = new Date(9234567); //通过指定毫秒数得到时间System.out.println("d2="+d2); //获取某个时间对应的毫秒数SimpleDateFormat smd = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss E");String format1 = smd.format(d2);System.out.println("当前日期="+format1);//1.可以把一个格式化的String转成对应的Date//2.得到Date仍然在输出时,还是按照国外的形式,如果希望指定格式输出,需要转换(使用SimpleDateFormat)//3.在把String -->Date,使用的sdf格式需要和你给的String的格式一样,否则会抛出转换异常。String s="1996年01月01日 10:20:30 星期一"; //格式必须和sdf上的格式一致Date parse = sdf.parse(s);System.out.println("parse="+parse);System.out.println("parse"+sdf.format(parse));}
}

我们运行之后如下所示:

 

我们在api文档里面来查看SimpleDate:

(4)Calendar类(日历)

1.第二代日期类,主要就是Calendar类(日历)

2.Calendar类是一个抽象类,它为特定瞬间与一组诸如YEAR、MONTH、DAY_OF_MONTH、HOUR等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

我们查看他的类图:

 我们发现Calendar的构造器是私有的:

我们查看他的方法:

 我们发现这些方法中有些是Calendar私有的。

 我们在去创建一个Calendar的时候是通过getInstance来获取的。

我们查看源码如下:

我们发现这两个构造方法都是私有的。

通过如下两个来获取Calendar:

  我们查看Calendar的字段如下所示:

我们查看他的内部类如下所示:
 我们的案例代码如下所示:

package com.ypl.data_;import java.util.Calendar;public class Calendar_ {public static void main(String[] args) {//1.Calendar是一个抽象类,并且构造器是private//2.可以通过getInstance( )来获取实例//3.提供大量的方法和字段提供给程序员//4.Calendar没有提供对应的格式化的类,因此需要程序员自己组合来输出(灵活)Calendar c = Calendar.getInstance();//创建日历类对象 //比较简单,自由System.out.println("c="+c);//4.获取日历对象的某个日历字段System.out.println("年:"+c.get(Calendar.YEAR));//这里为什么要+1,因为Calendar返回月时候,是按照 0 开始编号System.out.println("月:"+(c.get(Calendar.MONTH)+1));System.out.println("日:"+c.get(Calendar.DAY_OF_MONTH));System.out.println("小时:"+c.get(Calendar.HOUR));System.out.println("分钟:"+c.get(Calendar.MINUTE));System.out.println("秒:"+c.get(Calendar.SECOND));//Calendar没有专门的格式化方法,所以需要程序员自己来组合显示System.out.println(c.get(Calendar.YEAR)+"年"+(c.get(Calendar.MONTH)+1)+"月"+c.get(Calendar.DAY_OF_MONTH)+"日");}
}

 我们运行之后如下所示:

以上显示的是12小时时间,我们修改如下为24小时:

package com.ypl.data_;import java.util.Calendar;public class Calendar_ {public static void main(String[] args) {//1.Calendar是一个抽象类,并且构造器是private//2.可以通过getInstance( )来获取实例//3.提供大量的方法和字段提供给程序员//4.Calendar没有提供对应的格式化的类,因此需要程序员自己组合来输出(灵活)//5.如果我们需要按照24小时进制来获取时间,Calendar.HOUR==改成==>Calendar.HOUR_OF_DAYCalendar c = Calendar.getInstance();//创建日历类对象 //比较简单,自由System.out.println("c="+c);//4.获取日历对象的某个日历字段System.out.println("年:"+c.get(Calendar.YEAR));//这里为什么要+1,因为Calendar返回月时候,是按照 0 开始编号System.out.println("月:"+(c.get(Calendar.MONTH)+1));System.out.println("日:"+c.get(Calendar.DAY_OF_MONTH));System.out.println("小时:"+c.get(Calendar.HOUR_OF_DAY));System.out.println("分钟:"+c.get(Calendar.MINUTE));System.out.println("秒:"+c.get(Calendar.SECOND));//Calendar没有专门的格式化方法,所以需要程序员自己来组合显示System.out.println(c.get(Calendar.YEAR)+"年"+(c.get(Calendar.MONTH)+1)+"月"+c.get(Calendar.DAY_OF_MONTH)+"日");}
}

我们运行之后如下所示:

 

 (5)第三代日期类:LocalDate(日期/年月日)、LocalTime(时间/时分秒)、LocalDateTime(日期时间/年月日时分秒)JDK8加入

前面两代日期类的不足分析

JDK1.0中包含了一个java.util.Date类,但是它的大多数方法已经在JDK1.1引入Calendar类之后被弃用了。而Calendar也存在问题是:

1.可变性:像日期和时间这样的类应该是不可变的。

2.偏移性:Date中的年份是从1900开始的,而月份都从0开始

3.格式化:格式化只对Date有用,Calendar则不行

4.此外,他们也不是线程安全的;不能处理闰秒等(每隔2天,多出1s)

LocalDate:只包含日期,可以获取日期字段

LocalTime只包含时间,可以获取时间字段

LocalDateTime:包含日期+时间,可以获取日期和时间字段

我们查看LocalDateTime的类图如下所示:

我们查看他的构造器:
 我们查看他的方法如下所示:
 

 我们查看他的基本获取如下所示:

package com.ypl.data_;import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;public class LocalDate_ {public static void main(String[] args) {//第三代日期//1.使用now( )返回表示当前日期时间的对象LocalDateTime ldt = LocalDateTime.now(); //LocalDate.now( ); //LocalTime.now( )System.out.println(ldt);System.out.println("年="+ldt.getYear());System.out.println("月="+ldt.getMonth());//英文日System.out.println("月="+ldt.getMonthValue());//中文月System.out.println("日="+ldt.getDayOfYear());//一年的第几天System.out.println("日="+ldt.getDayOfMonth());//一个月的第几天System.out.println("时="+ldt.getHour());System.out.println("分="+ldt.getMinute());System.out.println("秒="+ldt.getSecond());LocalDate now = LocalDate.now();//可以获取年月日System.out.println(now.getYear());LocalTime now1 = LocalTime.now();//可以获取时分秒System.out.println(now1.getHour());}
}

运行之后如下所示:

DateTimeFormatter格式化

我们进行格式化如下所示:

 DateTimeFormatter格式日期类,类似于SimpleDateFormat

我们在jdk1.8及其以后发现如下所示:

 我们实例如下所示:

package com.ypl.data_;import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;public class LocalDate_ {public static void main(String[] args) {//第三代日期//1.使用now( )返回表示当前日期时间的对象LocalDateTime ldt = LocalDateTime.now(); //LocalDate.now( ); //LocalTime.now( )System.out.println(ldt);//2.使用DateTimeFormatter对象来进行格式化//创建DateTimeFormatter对象DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss");String format = dateTimeFormatter.format(ldt);System.out.println("格式化的日期="+format);}
}

我们运行之后如下所示:

 Instant时间戳,类似于Date,提供了一系列和Date类转换的方式

Instant -->Date:Date.form(instant);

Date--->Instant:date.toInstant():

我们查看他的类图如下所示:

 我们查看他的方法如下所示:

 我们设计的代码如下所示:

package com.ypl.data_;import java.sql.Date;
import java.time.Instant;public class Instant_ {public static void main(String[] args) {//1.通过静态方法now( )获取表示当前时间戳的对象Instant now = Instant.now();System.out.println(now);//2.通过from可以把Instant转成Datejava.util.Date from = Date.from(now);System.out.println(from);//3.通过date的toInstant( )可以把date转成Instant对象Instant instant = from.toInstant();System.out.println(instant);}
}

我们运行之后如下所示:

第三代日期类更多方法:

1.LocalDateTime类

2.MonthDay类:检查重复事件

3.是否是闰年

4.增加日期的某个部分

5.使用plus方法测试增加时间的某个部分

6.使用minus方法测试查看一年前和一年后的日期

 我们设计的代码如下所示:
 

package com.ypl.data_;import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;public class LocalDate1_ {public static void main(String[] args) {LocalDateTime now = LocalDateTime.now();DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss");//提供 plus和minus方法可以对当前时间进行加或者减//看看890天后,是什么时候  把年月日-时分秒LocalDateTime localDateTime = now.plusDays(890);System.out.println("890天后="+dateTimeFormatter.format(localDateTime));//看看在3456分钟前是什么时候, 把年月日-时分秒输出LocalDateTime localDateTime1 = now.minusMinutes(3456);System.out.println("3456分钟前 日期="+dateTimeFormatter.format(localDateTime1));}
}

运行之后如下所示:

 

 

相关文章:

常用类(五)System类

(1)System类常见方法和案例: (1)exit:退出当前程序 我们设计的代码如下所示: package com.ypl.System_;public class System_ {public static void main(String[] args) {//exit: 退出当前程序System.out.println("ok1"…...

Navicat Premium 安装 注册

Navicat Premium 一.Navicat Premium的安装 1.暂时关闭windows的病毒与威胁防护弄完再开,之后安装打开过程中弹窗所有警告全部允许,不然会被拦住 2.下载安装包,解压 链接:https://pan.baidu.com/s/1X24VPC4xq586YdsnasE5JA?pwdu4vi 提取码…...

回溯算法总结

首先回溯算法本身还是一个纯暴力的算法,只是回溯过程可能比较抽象,导致大家总是感觉看到的相关题目做的不是很顺畅,回溯算法一般来说解决的题目有以下几类:组合问题:lq77、lq17、lq39、lq40、lq216、切割问题&#xff…...

ccc-pytorch-基础操作(2)

文章目录1.类型判断isinstance2.Dimension实例3.Tensor常用操作4.索引和切片5.Tensor维度变换6.Broadcast自动扩展7.合并与分割8.基本运算9.统计属性10.高阶OP大伙都这么聪明,注释就只写最关键的咯1.类型判断isinstance 常见类型如下: a torch.randn(…...

独居老人一键式报警器

盾王居家养老一键式报警系统,居家养老一键式报警设备 ,一键通紧急呼救设备,一键通紧急呼救系统,一键通紧急呼救器 ,一键通紧急呼救终端,一键通紧急呼救主机终端产品简介: 老人呼叫系统主要应用于…...

软考案例分析题精选

试题一:阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。某公司中标了一个软件开发项目,项目经理根据以往的经验估算了开发过程中各项任务需要的工期及预算成本,如下表所示:任务紧前任务工期PV…...

基于SpringBoot+vue的无偿献血后台管理系统

基于SpringBootvue的无偿献血后台管理系统 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背…...

详解js在事件中,如何传递复杂数据类型(数组,对象,函数)

文章目录 前言一、何谓预编译,变量提升?二、复杂数据类型的传递 1.数组2.对象3.函数总结前言 在JavaScript这门编程语言学习中,如何传参,什么是变量提升,js代码预编译等等。要想成为一名优秀的js高手,这些内…...

高并发架构 第一章大型网站数据演化——核心解释与说明。大型网站技术架构——核心原理与案例分析

大型网站架构烟花发展历程1.1.1初始阶段的网站构架1.1.2应用服务和数据服务分离1.1.3使用缓存改善网络性能1.1.4使用应用服务器集群改善网站的并发处理能力1.1.5数据库读写分离1.1.6使用反向代理和cdn加速网站相应1.1.1初始阶段的网站构架 大型网站都是由小型网站一步步发展而…...

VPP接口INPUT节点运行数据

在设置virtio接口接收/发送队列函数的最后,更新接口的运行数据。 void virtio_vring_set_rx_queues (vlib_main_t *vm, virtio_if_t *vif) { ...vnet_hw_if_update_runtime_data (vnm, vif->hw_if_index); } void virtio_vring_set_tx_queues (vlib_main_t *vm,…...

RabbitMQ学习(九):延迟队列

一、延迟队列概念延时队列中,队列内部是有序的,最重要的特性就体现在它的延时属性上,延时队列中的元素是希望 在指定时间到了以后或之前取出和处理。简单来说,延时队列就是用来存放需要在指定时间内被处理的 元素的队列。其实延迟…...

TCP并发服务器(多进程与多线程)

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起探讨和分享Linux C/C/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。 TCP并发服务器(多进程与多线程)1. 多进程并发服务器(1)…...

第1章 Memcached 教程

Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。 Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。现在已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提高Web应用扩展性的重要因素…...

【2022.12.9】Lammps+Python 在计算g6(r)时遇到的问题

目录写在前面绘制g6( r )执行步骤【updated】如何检查图像的正确性:不是编程问题,而是数学问题的一个小bug废稿2则:写在前面 全部log: 【2022.11.16】LammpsPythonMATLAB在绘制维诺图时遇到的问题 绘制g6( r )执行步骤【updated…...

MySQL使用C语言连接

文章目录MySQL使用C语言连接引入库下载库文件在项目中使用库使用库连接数据库下发SQL请求获取查询结果MySQL使用C语言连接 引入库 要使用C语言连接MySQL,需要使用MySQL官网提供的库。 下载库文件 下载库文件 首先,进入MySQL官网,选择DEVEL…...

JavaScript随手笔记---比较两个数组差异

💌 所属专栏:【JavaScript随手笔记】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! &#…...

【C++修炼之路】21.红黑树封装map和set

每一个不曾起舞的日子都是对生命的辜负 红黑树封装map和set前言一.改良红黑树的数据域结构1.1 改良后的结点1.2 改良后的类二. 封装的set和map2.1 set.h2.2 map.h三. 迭代器3.1 迭代器封装3.2 const迭代器四.完整代码实现4.1 RBTree.h4.2 set.h4.3 map.h4.4 Test.cpp前言 上一节…...

下载ojdbc14.jar的10.2.0.1.0版本的包

一、首先要有ojdbc14.jar包 没有的可以去下载一个,我的是从这里下载的ojdbc14.jar下载_ojdbc14.jar最新版下载[驱动包软件]-下载之家, 就是无奈关注了一个公众号,有的就不用下了。 二、找到maven的本地仓库的地址 我的地址在这里D:\apach…...

关于欧拉角你需要知道几个点

基础理解,参照:https://www.cnblogs.com/Estranged-Tech/p/16903025.html 欧拉角、万向节死锁(锁死)理解 一、欧拉角理解 举例讲解 欧拉角用三次独立的绕确定的轴旋转角度来表示姿态。如下图所示 经过三次旋转,旋…...

git ssh配置

ssh配置 执行以下命令进行配置 git config --global user.name “这里换上你的用户名” git config --global user.email “这里换上你的邮箱” 执行以下命令生成秘钥: ssh-keygen -t rsa -C “这里换上你的邮箱” 执行命令后需要进行3次或4次确认。直接全部回车就…...

KubeSphere 容器平台高可用:环境搭建与可视化操作指南

Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...