Java学习32-Java 多线程Thread 线程的常用方法

线程构造器结构

1.线程中的构造器可以使用很多参数

  • public thread():分配一个新的线程对象
  • public Thread(String name):分配一个指定名字的线程对象
  • public Thread(Runnable target):指定创建线程的目标对象,它实现了Runnable接口中的run方法
  • public Thread(Runnable target, String name):分配一个带有指定目标新的线程对象并指定名字

比如下面的例子,主线程输出1-100之内的偶数,分线程也输出1=100之内的偶数,其中用户将分线程重命名为“线程1”:
提示:使用extends Thread 同时使用 public Thread(String name)重命名thread

package Thread;public class ThreadConsTest {public static void main(String[] args) {//3. 创建该Thread类子类的对象(创建Thread子类的实例)PrintNumberCons x = new PrintNumberCons("线程1");//4. 调用线程对象的start()方法,启动该线程x.start();for (int i = 0; i <= 100; i++) {if (i % 2 == 0) {System.out.println(i + "\t" + Thread.currentThread().getName());}}}}//5. 如果想实现其他更多线程,需要创建新的线程对象,不能再次调用已经start的线程。//1. 创建继承Thread类的子类class PrintNumberCons extends Thread {public PrintNumberCons() {}public PrintNumberCons(String name) {super(name);}//2. 重写Thread的run(),该run方法体囊括此线程需要完成的各种操作@Overridepublic void run() {for (int i = 0; i <= 100; i++) {if (i % 2 == 0) {System.out.println(i + "\t" + Thread.currentThread().getName());}}}}

运行结果可以看到“线程1”和“main”线程交替出现


0	线程1
2	线程1
4	线程1
6	线程1
8	线程1
10	线程1
12	线程1
14	线程1
16	线程1
18	线程1
20	线程1
22	线程1
24	线程1
26	线程1
28	线程1
30	线程1
32	线程1
0	main
2	main
4	main
6	main
8	main
10	main
12	main
34	线程1
36	线程1
38	线程1
40	线程1
42	线程1
44	线程1
46	线程1
48	线程1
50	线程1
14	main
16	main
18	main
20	main
22	main
24	main
26	main
28	main
30	main
32	main
34	main
36	main
38	main
40	main
42	main
44	main
46	main
48	main
50	main
52	main
54	main
56	main
58	main
60	main
62	main
64	main
66	main
68	main
70	main
72	main
52	线程1
54	线程1
56	线程1
58	线程1
60	线程1
62	线程1
64	线程1
66	线程1
68	线程1
70	线程1
72	线程1
74	线程1
76	线程1
78	线程1
80	线程1
82	线程1
84	线程1
86	线程1
88	线程1
90	线程1
92	线程1
94	线程1
96	线程1
98	线程1
100	线程1
74	main
76	main
78	main
80	main
82	main
84	main
86	main
88	main
90	main
92	main
94	main
96	main
98	main
100	mainProcess finished with exit code 0

Thread类的常用方法

start():1.启动线程2.调用线程run()

run():将线程要执行的操作,声明在run()中

currentThread():获取当前执行代码对应的线程

setName():设置线程名

getName():获取线程名

sleep(long millis):静态方法,调用时会让当前线程睡眠括号里的毫秒数

yield():静态方法,一旦调用,该线程直接释放CPU的执行权(注意本thread释放CPU之后有可能又迅速的在公平竞争中把CPU抢回来了,所以用户未必能在结果中体会到这个CPU的释放),比如Thread.yield()

join():在线程A通过线程B调用join,表示线程A进入阻塞状态,CPU直接去执行线程B,直到线程B执行结束,线程A停止阻塞再继续执行。

isAlive():判断当前线程是否存活

stop():已过时 不建议使用,强行结束线程直接死亡。可能会出现收尾工作没有做完,比如关闭文件,数据库等,同时会立刻释放该线程所有的锁,导致数据不同步等问题。

suspend() resume():已经过时,不建议使用。操作其暂停和恢复,必须成对出现,否则非常容易发生死锁。suspend()会导致线程暂停但不释放任何锁资源,其它线程都无法访问被它占用的锁,直到resume().

先看一个使用join的例子

package ThreadPool;public class Test2 {public static void main(String[] args) {Thread t_add = new Thread (){public void run() {for (int i = 0; i <= 100; i++) {System.out.println(Thread.currentThread().getName()+" is printing "+i);}}};Thread t_minus= new Thread (){public void run() {try {t_add.join(); //在t_minus里面调用t_add,这句的意思是等着t_add执行完毕再执行下面的t_minus内容} catch (InterruptedException e) {e.printStackTrace();}for (int i = 100; i >= 0; i--) {System.out.println(Thread.currentThread().getName()+" is printing "+i);}}};//尽管 t_minus是先于t_add开始start的,因为有着上面的join()控制,
//t_add.start仍是先执行的。t_minus.start();t_add.start();}}

运行结果


Thread-0 is printing 0
Thread-0 is printing 1
Thread-0 is printing 2
Thread-0 is printing 3
Thread-0 is printing 4
Thread-0 is printing 5
Thread-0 is printing 6
Thread-0 is printing 7
Thread-0 is printing 8
Thread-0 is printing 9
Thread-0 is printing 10
Thread-0 is printing 11
Thread-0 is printing 12
Thread-0 is printing 13
Thread-0 is printing 14
Thread-0 is printing 15
Thread-0 is printing 16
Thread-0 is printing 17
Thread-0 is printing 18
Thread-0 is printing 19
Thread-0 is printing 20
Thread-0 is printing 21
Thread-0 is printing 22
Thread-0 is printing 23
Thread-0 is printing 24
Thread-0 is printing 25
Thread-0 is printing 26
Thread-0 is printing 27
Thread-0 is printing 28
Thread-0 is printing 29
Thread-0 is printing 30
Thread-0 is printing 31
Thread-0 is printing 32
Thread-0 is printing 33
Thread-0 is printing 34
Thread-0 is printing 35
Thread-0 is printing 36
Thread-0 is printing 37
Thread-0 is printing 38
Thread-0 is printing 39
Thread-0 is printing 40
Thread-0 is printing 41
Thread-0 is printing 42
Thread-0 is printing 43
Thread-0 is printing 44
Thread-0 is printing 45
Thread-0 is printing 46
Thread-0 is printing 47
Thread-0 is printing 48
Thread-0 is printing 49
Thread-0 is printing 50
Thread-0 is printing 51
Thread-0 is printing 52
Thread-0 is printing 53
Thread-0 is printing 54
Thread-0 is printing 55
Thread-0 is printing 56
Thread-0 is printing 57
Thread-0 is printing 58
Thread-0 is printing 59
Thread-0 is printing 60
Thread-0 is printing 61
Thread-0 is printing 62
Thread-0 is printing 63
Thread-0 is printing 64
Thread-0 is printing 65
Thread-0 is printing 66
Thread-0 is printing 67
Thread-0 is printing 68
Thread-0 is printing 69
Thread-0 is printing 70
Thread-0 is printing 71
Thread-0 is printing 72
Thread-0 is printing 73
Thread-0 is printing 74
Thread-0 is printing 75
Thread-0 is printing 76
Thread-0 is printing 77
Thread-0 is printing 78
Thread-0 is printing 79
Thread-0 is printing 80
Thread-0 is printing 81
Thread-0 is printing 82
Thread-0 is printing 83
Thread-0 is printing 84
Thread-0 is printing 85
Thread-0 is printing 86
Thread-0 is printing 87
Thread-0 is printing 88
Thread-0 is printing 89
Thread-0 is printing 90
Thread-0 is printing 91
Thread-0 is printing 92
Thread-0 is printing 93
Thread-0 is printing 94
Thread-0 is printing 95
Thread-0 is printing 96
Thread-0 is printing 97
Thread-0 is printing 98
Thread-0 is printing 99
Thread-0 is printing 100
Thread-1 is printing 100
Thread-1 is printing 99
Thread-1 is printing 98
Thread-1 is printing 97
Thread-1 is printing 96
Thread-1 is printing 95
Thread-1 is printing 94
Thread-1 is printing 93
Thread-1 is printing 92
Thread-1 is printing 91
Thread-1 is printing 90
Thread-1 is printing 89
Thread-1 is printing 88
Thread-1 is printing 87
Thread-1 is printing 86
Thread-1 is printing 85
Thread-1 is printing 84
Thread-1 is printing 83
Thread-1 is printing 82
Thread-1 is printing 81
Thread-1 is printing 80
Thread-1 is printing 79
Thread-1 is printing 78
Thread-1 is printing 77
Thread-1 is printing 76
Thread-1 is printing 75
Thread-1 is printing 74
Thread-1 is printing 73
Thread-1 is printing 72
Thread-1 is printing 71
Thread-1 is printing 70
Thread-1 is printing 69
Thread-1 is printing 68
Thread-1 is printing 67
Thread-1 is printing 66
Thread-1 is printing 65
Thread-1 is printing 64
Thread-1 is printing 63
Thread-1 is printing 62
Thread-1 is printing 61
Thread-1 is printing 60
Thread-1 is printing 59
Thread-1 is printing 58
Thread-1 is printing 57
Thread-1 is printing 56
Thread-1 is printing 55
Thread-1 is printing 54
Thread-1 is printing 53
Thread-1 is printing 52
Thread-1 is printing 51
Thread-1 is printing 50
Thread-1 is printing 49
Thread-1 is printing 48
Thread-1 is printing 47
Thread-1 is printing 46
Thread-1 is printing 45
Thread-1 is printing 44
Thread-1 is printing 43
Thread-1 is printing 42
Thread-1 is printing 41
Thread-1 is printing 40
Thread-1 is printing 39
Thread-1 is printing 38
Thread-1 is printing 37
Thread-1 is printing 36
Thread-1 is printing 35
Thread-1 is printing 34
Thread-1 is printing 33
Thread-1 is printing 32
Thread-1 is printing 31
Thread-1 is printing 30
Thread-1 is printing 29
Thread-1 is printing 28
Thread-1 is printing 27
Thread-1 is printing 26
Thread-1 is printing 25
Thread-1 is printing 24
Thread-1 is printing 23
Thread-1 is printing 22
Thread-1 is printing 21
Thread-1 is printing 20
Thread-1 is printing 19
Thread-1 is printing 18
Thread-1 is printing 17
Thread-1 is printing 16
Thread-1 is printing 15
Thread-1 is printing 14
Thread-1 is printing 13
Thread-1 is printing 12
Thread-1 is printing 11
Thread-1 is printing 10
Thread-1 is printing 9
Thread-1 is printing 8
Thread-1 is printing 7
Thread-1 is printing 6
Thread-1 is printing 5
Thread-1 is printing 4
Thread-1 is printing 3
Thread-1 is printing 2
Thread-1 is printing 1
Thread-1 is printing 0Process finished with exit code 0

下面的例子使用到了Thread类其他常见的method

package Thread;import static java.lang.Thread.currentThread;
import static java.lang.Thread.sleep;public class ThreadConsTest {public static void main(String[] args) throws InterruptedException {//3. 创建该Thread类子类的对象(创建Thread子类的实例)PrintNumberCons x = new PrintNumberCons("线程1");//4. 调用线程对象的start()方法,启动该线程x.setName("线程1计算能被2整除的数");x.start();Thread.currentThread().setName("主线程main在计算--不能被3整除的数");for (int i = 0; i <= 30; i++) {if (i % 3 != 0) {currentThread().sleep(800);if(i>=8) x.join();System.out.println(i + "\t" + Thread.currentThread().getName());}}System.out.println("主线程main还活着吗? "+Thread.currentThread().isAlive());System.out.println("线程1还活着吗? "+ x.isAlive());}}//5. 如果想实现其他更多线程,需要创建新的线程对象,不能再次调用已经start的线程。//1. 创建继承Thread类的子类class PrintNumberCons extends Thread {public PrintNumberCons() {}public PrintNumberCons(String name) {super(name);}//2. 重写Thread的run(),该run方法体囊括此线程需要完成的各种操作@Overridepublic void run() {for (int i = 0; i <= 20; i++) {if (i >=5){Thread.yield();}//if (i==16) currentThread().yield();if(i==16) {try {currentThread().join(1000);} catch (InterruptedException e) {throw new RuntimeException(e);}}if (i % 2 == 0) {if (i == 16) currentThread().yield();try {sleep(800);} catch (InterruptedException e) {throw new RuntimeException(e);}System.out.println(i + "\t" + Thread.currentThread().getName());}}}}

运行结果:


1	主线程main在计算--不能被3整除的数
0	线程1计算能被2整除的数
2	线程1计算能被2整除的数
2	主线程main在计算--不能被3整除的数
4	线程1计算能被2整除的数
4	主线程main在计算--不能被3整除的数
6	线程1计算能被2整除的数
5	主线程main在计算--不能被3整除的数
8	线程1计算能被2整除的数
7	主线程main在计算--不能被3整除的数
10	线程1计算能被2整除的数
12	线程1计算能被2整除的数
14	线程1计算能被2整除的数
16	线程1计算能被2整除的数
18	线程1计算能被2整除的数
20	线程1计算能被2整除的数
8	主线程main在计算--不能被3整除的数
10	主线程main在计算--不能被3整除的数
11	主线程main在计算--不能被3整除的数
13	主线程main在计算--不能被3整除的数
14	主线程main在计算--不能被3整除的数
16	主线程main在计算--不能被3整除的数
17	主线程main在计算--不能被3整除的数
19	主线程main在计算--不能被3整除的数
20	主线程main在计算--不能被3整除的数
22	主线程main在计算--不能被3整除的数
23	主线程main在计算--不能被3整除的数
25	主线程main在计算--不能被3整除的数
26	主线程main在计算--不能被3整除的数
28	主线程main在计算--不能被3整除的数
29	主线程main在计算--不能被3整除的数
主线程main还活着吗? true
线程1还活着吗? falseProcess finished with exit code 0

线程的优先级

getPriority():获取线程的优先级
setPriority():设置线程的优先级 范围 【1-10】

Thread类内部声明的三个常量:

  • public static final int MIN_PRIORITY = 1; 最低优先级
  • public static final int NORM_PRIORITY = 5; 默认优先级
  • public static final int MAX_PRIORITY = 10; 最高优先级

下面的例子中括号里分别用了数字和来定义setPriority(),都是可以使用的,值得注意的是,对于多核CPU,资源抢占获得的优先级在运行结果处并不是十分明显。

package Thread;import static java.lang.Thread.currentThread;
import static java.lang.Thread.sleep;public class ThreadConsTest {public static void main(String[] args) throws InterruptedException {//3. 创建该Thread类子类的对象(创建Thread子类的实例)PrintNumberCons x = new PrintNumberCons("线程1");//4. 调用线程对象的start()方法,启动该线程x.setName("线程1计算能被2整除的数");x.setPriority(7); //也可以写 x.setPriority(MAX_PRIORITY);x.start();Thread.currentThread().setName("主线程main在计算--不能被3整除的数");Thread.currentThread().setPriority(2);//也可以写 Thread.currentThread().setPriority(MIN_PRIORITY);for (int i = 0; i <= 30; i++) {if (i % 3 != 0) {currentThread().sleep(800);if(i>=8) x.join();System.out.println(i + "\t" + Thread.currentThread().getName());}}System.out.println("主线程main还活着吗? "+Thread.currentThread().isAlive());System.out.println("线程1还活着吗? "+ x.isAlive());}}//5. 如果想实现其他更多线程,需要创建新的线程对象,不能再次调用已经start的线程。//1. 创建继承Thread类的子类class PrintNumberCons extends Thread {public PrintNumberCons() {}public PrintNumberCons(String name) {super(name);}//2. 重写Thread的run(),该run方法体囊括此线程需要完成的各种操作@Overridepublic void run() {for (int i = 0; i <= 20; i++) {if (i >=5){Thread.yield();}//if (i==16) currentThread().yield();if(i==16) {try {currentThread().join(1000);} catch (InterruptedException e) {throw new RuntimeException(e);}}if (i % 2 == 0) {if (i == 16) currentThread().yield();try {sleep(800);} catch (InterruptedException e) {throw new RuntimeException(e);}System.out.println(i + "\t" + Thread.currentThread().getName());}}}}

运行结果:

0	线程1计算能被2整除的数
1	主线程main在计算--不能被3整除的数
2	线程1计算能被2整除的数
2	主线程main在计算--不能被3整除的数
4	线程1计算能被2整除的数
4	主线程main在计算--不能被3整除的数
6	线程1计算能被2整除的数
5	主线程main在计算--不能被3整除的数
8	线程1计算能被2整除的数
7	主线程main在计算--不能被3整除的数
10	线程1计算能被2整除的数
12	线程1计算能被2整除的数
14	线程1计算能被2整除的数
16	线程1计算能被2整除的数
18	线程1计算能被2整除的数
20	线程1计算能被2整除的数
8	主线程main在计算--不能被3整除的数
10	主线程main在计算--不能被3整除的数
11	主线程main在计算--不能被3整除的数
13	主线程main在计算--不能被3整除的数
14	主线程main在计算--不能被3整除的数
16	主线程main在计算--不能被3整除的数
17	主线程main在计算--不能被3整除的数
19	主线程main在计算--不能被3整除的数
20	主线程main在计算--不能被3整除的数
22	主线程main在计算--不能被3整除的数
23	主线程main在计算--不能被3整除的数
25	主线程main在计算--不能被3整除的数
26	主线程main在计算--不能被3整除的数
28	主线程main在计算--不能被3整除的数
29	主线程main在计算--不能被3整除的数
主线程main还活着吗? true
线程1还活着吗? false

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言学习笔记二

文章目录 进制的代码表示数字数据类型字符类型输出字符例子 进制的代码表示 #include <stdio.h> int main() {short a 0100; // 八进制int b -0x1; // 十六进制long c 720; //十进制unsigned short m 0xffff; //十六进制unsigned int n 0x80000000; //十…

高阶DS---AVL树详解(每步配图)

目录 前言&#xff1a; AVL树的概念: AVL树节点的定义&#xff1a; AVL树的插入&#xff08;重点&#xff09; AVL树的旋转&#xff1a; &#xff08;1&#xff09;新节点插入较高左子树的左侧---右单旋 &#xff08;2&#xff09;新节点插入较高右子树的右侧---左单旋 …

TCP网络编程实例

服务器端代码&#xff1a; #include<t_stdio.h> #include<sys/types.h> #include <sys/socket.h> #include<arpa/inet.h> #include <sys/socket.h> #include<ctype.h> #include<unistd.h> int main(void){struct sockadd…

unity双层滑动实现

实现功能&#xff1a; 当滑动列表中内容处于顶端的时候&#xff0c;向上滑动优先滑动整个滑动列表&#xff0c;当滑动列表移动到设置位置&#xff0c;即设定的最高处时&#xff0c;继续移动列表内内容。向下移动亦然&#xff0c;当内容处于滑动列表顶端时&#xff0c;移动整个滑…

9.包和工具【go】

在Go语言中,包是代码的组织单元,而工具链则是Go语言提供的命令行工具,用于构建、测试和调试Go代码。下面我将详细介绍如何导入和使用标准库中的包,如何编写自己的包,以及如何使用Go的工具链。 导入和使用标准库中的包 Go的标准库包含了许多预定义的包,你可以通过导入这…

2022-04-15_for循环等_作业

for循环 编写程序数一下 1到 100 的所有整数中出现多少个数字9计算1/1-1/21/3-1/41/5 …… 1/99 - 1/100 的值&#xff0c;打印出结果求10 个整数中最大值在屏幕上输出9*9乘法口诀表二分查找 编写程序数一下 1到 100 的所有整数中出现多少个数字9 #include <stdio.h>in…

深入解析Hadoop生态核心组件:HDFS、MapReduce和YARN

这里写目录标题 01HDFS02Yarn03Hive04HBase1&#xff0e;特点2&#xff0e;存储 05Spark及Spark Streaming关于作者&#xff1a;推荐理由&#xff1a;作者直播推荐&#xff1a; 一篇讲明白 Hadoop 生态的三大部件 进入大数据阶段就意味着进入NoSQL阶段&#xff0c;更多的是面向…

[游戏开发][UE5.3]代码生成蓝图文件并在代码中保存文件。

我看网上有人的做法比我更好&#xff0c;我这个更简单 UE5-GAS:读取Excel数据在蓝图创建并更新GE类 - 知乎 数据配表 测试编辑器API 创建编辑器蓝图文件&#xff0c;继承AssetActionUtility.h 创建在编辑器中显示的函数&#xff0c;可以用中文命名方便其他人使用。 右键任意…

从零开始学Python数据分析:菜鸟也能成高手(文末送书)

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

【数据结构与算法初阶(c语言)】插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序-全梳理(万字详解,干货满满,建议三连收藏)

目录 1.排序的概念及其运用 1.1排序的概念 1.2排序运用 1.3常见的排序算法 2.插入排序 2.1 原理演示&#xff1a;​编辑 2.2 算法实现 2.3 算法的时间复杂度和空间复杂度分析 3.希尔排序 3.1算法思想 3.2原理演示 3.3代码实现 3.4希尔算法的时间复杂度 4.冒泡排序 4.1冒泡排…

test01

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和…

Java的IDEA的工程管理

模块和包的图标&#xff1a; 举个例子&#xff1a; IDEA中创建包&#xff1a; 如图所示&#xff0c;com.LBJ的意思是在com包中创建子包LBJ 参见&#xff1a; IDEA中项目、模块和包的关系_idea中模块和项目-CSDN博客

网站秒收录的6个方法

网站怎么做到秒收录 网站的收录速度对于网站的曝光和流量至关重要。如果能够实现网站的秒收录&#xff0c;将大大提高网站的可见性和访问量。下面介绍几种方法&#xff0c;帮助您实现网站秒收录的目标。 1. 提交sitemap.xml文件 创建并提交sitemap.xml文件是实现网站快速收录…

Netty学习——源码篇9 Netty的Handler其他处理 备份

1 ChannelHandlerContext 每个ChannelHandler被添加到ChannelPipeline后&#xff0c;都会创建一个ChannelHandlerContext&#xff0c;并与ChannelHandler关联绑定。ChannelHandlerContext允许ChannelHandler与其他的ChannelHandler进行交互。ChannelHandlerContext不会改变添加…

U8二次开发-钉钉集成

钉钉开放平台作为企业沟通和协作的重要工具,其技术的每一次迭代都为企业带来了新的机遇和挑战。随着企业对于高效沟通和智能化管理的需求日益增长,钉钉平台的SDK更新显得尤为重要。把传统的U8与钉钉平台集成,可以有效的将业务功能和角色进行前移,打破应用系统二八原则,即8…

知识图谱:构建智能应用的大脑

引言 在当今数字化时代&#xff0c;数据的爆炸式增长使得人们面临着海量信息的处理和利用问题。在这样的背景下&#xff0c;知识图谱作为一种强大的知识表示和管理工具&#xff0c;正逐渐成为解决复杂问题和构建智能应用的关键技术之一。本文将深入探讨知识图谱的概念、重要性…

dailyneaty、希亦、鲸立婴儿洗衣机怎么样?三款卷王测评PK对决

曾经我还是一直选择手洗婴儿衣物&#xff0c;最终还是加入了买婴儿洗衣机的大军&#xff0c;一方面因为我懒&#xff0c;不想再继续手洗&#xff0c;另一方面是因为我看了科普才知道&#xff0c;当我们清洗衣物时&#xff0c;除了要洗掉衣物表面的污渍&#xff0c;更需要消除掉…

MATLAB——知识点备忘

最近在攻略ADC建模相关方面&#xff0c;由好多零碎的知识点&#xff0c;这里写个备忘录。 Matlab 判断一个数是否为整数 1. isinteger 函数 MATLAB中&#xff0c;可以使用 isinteger 函数来判断一个数是否为整数&#xff0c;例如&#xff1a;要判断x是否为整数可以采用以下代…

科研学习|论文解读——情感对感知偶然信息遭遇的影响研究(JASIST,2022)

原文题目 Investigating the impact of emotions on perceiving serendipitous information encountering 一、引言 serendipity一词最初是由霍勒斯沃波尔创造的&#xff0c;他将其定义为“通过意外和睿智发现你并不追求的事物”。信息研究中大多数现有的偶然性定义从几个角度看…

劳动力规划:对企业加速运营的未来展望

近年来&#xff0c;企业面临着过山车般的经济形势&#xff0c;面对消费水平的上涨、市场波动带来的担忧以及数字化的加速转型&#xff0c;许多企业虽然对未来仍秉持着谨慎乐观的态度&#xff0c;但也同时认为自身缺乏持续增长和成功转型的能力。为了让企业能够实现战略目标、应…