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

个人网站作品企业营销战略

个人网站作品,企业营销战略,深圳网站建设便宜信科网络,竞价托管优化公司一直学习理论怎么能不做练习呢?下面我将出几个编程题来巩固编程。 练习1: 新建三个线程,使用并发编程,同时计算三个线程的数并且输出计算的过程,线程1计算从1加到100,线程2计算50的阶乘,线程三计算根号三并且输出小数点后十位。 答案 import com.google.common.util…

一直学习理论怎么能不做练习呢?下面我将出几个编程题来巩固编程。

练习1:

新建三个线程,使用并发编程,同时计算三个线程的数并且输出计算的过程,线程1计算从1加到100,线程2计算50的阶乘,线程三计算根号三并且输出小数点后十位。

答案

import com.google.common.util.concurrent.*;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.math.MathContext;
import java.util.concurrent.*;
import java.util.concurrent.atomic.AtomicInteger;public class MultiThreadCalculator {// 创建监听线程池private static final ListeningExecutorService executor = MoreExecutors.listeningDecorator(Executors.newFixedThreadPool(3));public static void main(String[] args) {// 启动三个计算任务ListenableFuture<?> additionFuture = executor.submit(new AdditionTask());ListenableFuture<?> multiplicationFuture = executor.submit(new MultiplicationTask());ListenableFuture<?> sqrtFuture = executor.submit(new SquareRootTask());// 添加回调处理异常Futures.addCallback(additionFuture, new LoggingCallback(), executor);Futures.addCallback(multiplicationFuture, new LoggingCallback(), executor);Futures.addCallback(sqrtFuture, new LoggingCallback(), executor);// 等待所有任务完成ListenableFuture<?> allFutures = Futures.allAsList(additionFuture, multiplicationFuture, sqrtFuture);try {allFutures.get();System.out.println("\n所有计算任务完成!");} catch (Exception e) {e.printStackTrace();} finally {executor.shutdown();}}// 加法任务:计算1加到100static class AdditionTask implements Runnable {@Overridepublic void run() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;System.out.println("[加法线程] 添加 " + i + " → 当前总和: " + sum);Uninterruptibles.sleepUninterruptibly(50, TimeUnit.MILLISECONDS);}System.out.println("\n[加法线程] 最终结果: 1到100的和 = " + sum);}}// 乘法任务:计算2乘到50(使用BigInteger避免溢出)static class MultiplicationTask implements Runnable {@Overridepublic void run() {BigInteger product = BigInteger.ONE;for (int i = 2; i <= 50; i++) {product = product.multiply(BigInteger.valueOf(i));System.out.println("[乘法线程] 乘以 " + i + " → 当前乘积: " + product);Uninterruptibles.sleepUninterruptibly(70, TimeUnit.MILLISECONDS);}System.out.println("\n[乘法线程] 最终结果: 2到50的乘积 = " + product);}}// 开方任务:计算√3的小数点后10位数字static class SquareRootTask implements Runnable {@Overridepublic void run() {// 计算√3到小数点后20位精度BigDecimal sqrt3 = BigDecimal.valueOf(3).sqrt(new MathContext(20));String decimalPart = sqrt3.toString().split("\\.")[1];System.out.println("[开方线程] √3 完整值: " + sqrt3);// 输出小数点后10位数字for (int i = 0; i < 10; i++) {if (i < decimalPart.length()) {char digit = decimalPart.charAt(i);System.out.println("[开方线程] 小数点后第" + (i+1) + "位: " + digit);} else {System.out.println("[开方线程] 小数点后第" + (i+1) + "位: 0");}Uninterruptibles.sleepUninterruptibly(100, TimeUnit.MILLISECONDS);}// 只输出前10位小数String result = decimalPart.length() >= 10 ? decimalPart.substring(0, 10) : decimalPart;System.out.println("\n[开方线程] 最终结果: √3 ≈ " + result);}}// 通用回调处理static class LoggingCallback implements FutureCallback<Object> {@Overridepublic void onSuccess(Object result) {// 任务成功完成,无需特别处理}@Overridepublic void onFailure(Throwable t) {System.err.println("任务失败: " + t.getMessage());t.printStackTrace();}}
}

练习2

和练习1一样,对线程的执行顺序有要求,要求线程1执行一半时执行线程2,线程2执行一半时执行线程3,等待线程3执行完毕后再执行线程2,线程2执行完毕后执行线程1,要求分清不同线程的执行过程

答案:

package org.example;import com.google.common.util.concurrent.*;import java.math.BigDecimal;
http://www.dtcms.com/wzjs/289633.html

相关文章:

  • 网站到期忘记续费seo推广要多少钱
  • 苏州招聘网站建设巨量算数官方入口
  • 做软件需要网站有哪些百度问答下载安装
  • 丹东建设安全监督网站搜索引擎有哪些网站
  • 建站 网站程序有哪些哪家建设公司网站
  • 宁波网站建设培训哪家好株洲网站设计
  • 用asp做宠物网站页面淘宝关键词查询工具哪个好
  • 网站建设前期分析b站推出的短视频app哪个好
  • ip开源网站FPGA可以做点什么怎么做好网络推广销售
  • 郑州低价网站制作搜索引擎优化是什么意思
  • 成都网站建设四川冠辰seo查询官方网站
  • 宁波seo营销
  • 百度网站小程序怎么做网络营销章节测试答案
  • 网站建设公司注册想做百度推广找谁
  • 成人做暧视频观看网站网络广告的形式有哪些?
  • 怎么进入wordpress后台改苏州关键词优化搜索排名
  • 品牌网站建设源码seo下载站
  • 自适应型网站建设多少钱郑州网站优化哪家好
  • 宜兴做网站的公司有哪些女生学电子商务好吗
  • 建设网站需要的ftp资源谷歌seo公司
  • 自己做的网站竞价优化武汉seo建站
  • 365房产南京网站爱站网长尾关键词挖掘工具
  • 固安建设网站百度快速seo优化
  • 公章电子版在线制作网站刷关键词要刷大词吗
  • 企业网站建设建议郑州百度推广公司
  • 海洋cms怎么做电影网站网站推广和优化的原因网络营销
  • 做视频上传可以赚钱的网站阿里指数查询手机版
  • 类似12306网站开发免费开源代码网站
  • 微商代理0元0投入关键词排名优化
  • 安徽基层党组织建设网站seo技术教学视频