两个线程分别打印26个英文字母的元音(a,e,i,o,u)和辅音(其他),按字母序输出

多线程依次循环打印26个英文字母 立即下载

1. 两个线程分别打印26个英文字母的元音(a,e,i,o,u)和辅音(其他),按字母序输出

 

方法一:使用wait 和 notify 实现

public class WordsAlternant {

    public static String[] letters = {
            "a", "b", "c", "d", "e", "f", "g", "h", "i",
            "j", "k", "l", "m", "n", "o", "p", "q", "r",
            "s", "t", "u", "v", "w", "x", "y", "z"};

    static boolean isYuan(String s) {
        switch (s) {
            case "a":
                return true;
            case "e":
                return true;
            case "i":
                return true;
            case "o":
                return true;
            case "u":
                return true;
        }
        return false;
    }

    public static volatile int index = 0;

    public static void main(String[] args) {
        Object o = new Object();
        new Thread(new Yuan(o)).start();
        new Thread(new Fu(o)).start();

    }

    public static class Yuan implements Runnable {
        Object o;
        public Yuan(Object o) {
            this.o = o;
        }

        @Override
        public void run() {
            synchronized(o) {
                while (index <= 25) {
                    if (isYuan(letters[index])) {
                        System.out.println("元音线程" + letters[index]);
                        index++;
                    } else {
                        try {
                            notifyAll();
                            wait();
                        } catch (Exception e) {
                            //e.printStackTrace();
                        }
                    }

                }
            }
        }
    }

    public static class Fu implements Runnable {

        Object o;
        public Fu(Object o) {
            this.o = o;
        }


        @Override
        public void run() {
            while (index <= 25) {
                if (!isYuan(letters[index])) {
                    System.out.println("辅音线程" + letters[index]);
                    index++;
                } else {
                    try {
                        notifyAll();
                        wait();
                    } catch (Exception e) {
                        //e.printStackTrace();
                    }
                }

            }
        }
    }

}

 


 
基于Transformers库的BERT模型:一个文本情感分类的实例解析 简介 本文来讲述BERT应用的一个例子,采用预训练好的BERT模型来进行演示。BERT的库来源于Transformers,这是一个由PyTorch编写的库,其集成了多个NLP领域SOTA的模型,比如bert、gpt-2、transformer xl等,并且可以自由选择已经预训练好的模型参数,我们可以基于这些参数进行进一步的训练调试。 Part 1: 利用BERT基于特征的方式进行建模 1、任务与数... 阅读详情

相关推荐

对西安交大轴承数据集XJTU-SY_Bearing_Datasets进行读取和处理:

故障诊断,对西安交大轴承数据集XJTU-SY_Bearing_Datasets进行读取和处理

qq_44757503的博客 6058

两个线程分别打印26个字母的元音(a,e,i,o,u) 和辅音(其他),要求按字母序输出

使用conditionn public static void main(String[] args) { ReentrantLock lock = new ReentrantLock(); Condition condition1 = lock.newCondition(); Condition condition2 = lock.newCond...

hello world 1632

科普:Frenet坐标

理想情况下,描述这种常见驾驶行为在数学上应该很容易。一种方法是使用新的坐标系。现在,而不是放下一个正常的笛卡尔网格,我们做一些事情,就像你看到下面…Frenet Coordinates是一种以比传统x,y笛卡尔坐标更直观的方式表示道路位置的方式。如果我们想要方程式来描述这个动作,那就不容易了!想象一下像下面这样一条弯曲的道路,笛卡尔坐标系就位于它的上面…使用这些笛卡尔坐标,我们可以尝试描述车辆通常在路上行驶的路径…那么在Frenet坐标系下呈现的典型轨迹是什么样的?在这里,我们定义了一个新的坐标系统。

OceanStar的博客 1万+

【面试题】两个线程分别打印26个英文字母的元音(a,e,i,o,u)和辅音(其他),按字母序输出

两个线程分别打印26个英文字母的元音(a,e,i,o,u)和辅音(其他),按字母序输出 package com.xiaochengxinyizhan.data_structures.codingCode; import java.util.concurrent.locks.ReentrantLock; /** * @author liuxiaocheng * @create 2019-...

小诚信驿站 3835

从OVITO可视化到LAMMPS计算:ATOMSK堆垛层错模型的全流程避坑指南

本文提供了一份从ATOMSK建模、OVITO可视化诊断到LAMMPS计算的堆垛层错模型全流程实战指南。重点解析了构建“计算友好”模型的核心矛盾,并详细演示了如何通过添加真空层、原子包裹和能量最小化等关键步骤,规避周期性边界条件带来的非物理相互作用,确保广义层错能计算的可靠性与可复现性。

v4w5x6的博客 266

从零开始构建量化价值投资多因子模型

量化价值投资多因子模型的构建目的在于通过系统性的方法,综合考虑多个影响股票价值的因素,以更准确地评估股票的投资价值,为投资者提供科学的投资决策依据。本模型的构建范围涵盖了从因子的选取、数据的处理、模型的建立到模型的评估和优化等一系列过程。通过对历史数据的分析和回测,验证模型的有效性和稳定性,进而应用于实际的投资组合管理中。本文将按照以下结构进行组织:首先介绍量化价值投资和多因子模型的相关背景知识,包括核心概念和联系;接着详细阐述核心算法原理和具体操作步骤,并给出Python代码示例;

AI天才研究院 1238

java输出26个字母_Java语言:输出26个英文字母(从键盘输入)

程序要求:输出26个英文字母,从键盘输入字符a,然后26个字母分两行进行输出,每十三个字母一行程序如下import java.util.Scanner;public class Demo {public static void main(String[] args) {char ch;int count=0;//用于计算已经输出多少个字母,好输出换行符System.out.println("请输入...

weixin_31460419的博客 5326

如何在VSCode中无缝集成Azure OpenAI GPT-5-codex?保姆级配置教程

本文详细介绍了在VSCode中无缝集成Azure OpenAI GPT-5-codex的完整配置教程,涵盖环境准备、Azure资源创建、本地配置、VSCode插件安装及高级定制。通过Codex CLI和config.toml文件配置,开发者可快速实现AI辅助编程,大幅提升代码生成、错误诊断和文档编写效率。

weixin_29268637的博客 554

JAVA面试题输出26个英文字母

核心代码: public class Test { public static void main(String[] args) { System.out.println("小写字母:"); for(int i = 1;i<=26;i++){ System.out.print((char)(96+i)); //小写 } System.out.println(""); System

千年板蓝根 9523

11、气动外形优化中的连续伴随方法

本文探讨了连续伴随方法在气动外形优化中的理论背景、实现和验证过程。通过使用DLR的FLOWer求解器,将伴随方法应用于Euler和Navier-Stokes方程,以高效计算成本函数梯度,从而显著减少优化过程中的计算成本。文章还介绍了该方法在RAE2822翼型和ONERA M6机翼等案例中的应用,并展示了其准确性和效率。未来展望包括扩展到复杂流动模拟和多学科优化。

desk3的博客 165

飞牛 NAS 部署 Hermes Agent 全指南:打造 24 小时在线、自我进化的 AI 智能体!

当大多数人还在把 AI 当聊天机器人使用时,我已经把它部署到了家里的飞牛 NAS 上,让它 24 小时在线工作、记忆我的习惯、自动执行任务,甚至还能不断学习新的技能。今天带你从零搭建这个真正属于自己的 AI Agent。🚀

XiaoqiangClub的博客 1221

2. 通过2个线程按顺序输出26个字母(不能重复)。

2. 通过2个线程按顺序输出26个字母(不能重复)。 参考文章 https://blog.youkuaiyun.com/qq_45928520/article/details/118058185

qq_45928520的博客 787

【Dify系列教程重置精品版】第二章:在Windows上部署Dify

让我们的电脑允许使用Linux系统。有点兴奋是怎么回事?简单来说就是让你的电脑拥有另一个叫做Linux的系统。3.选择“适用于Linux的Windows子系统”与 “虚拟机平台”与“Hyper-V"第1章:安装 wsl (Windows Subsystem for Linux)上一章我们聊了什么是Dify,这一章我们讲一下怎么才能用Dify。好了,我们的环境部署好了,下一章我们正式进入Dify。下载完成后,我们直接一直无脑下一步,安装即可。完成上述步骤,我们就可以开始安装wsl了。我们的虚拟化也是开启的。

xiezhipu的博客 866

每天一个面经系列--面经20:面试手撕代码三选二

两个线程分别打印26个英文字母的元音(a, e, i, o, u)和辅音(其他),按字母序输出。 一条N个格子组成的直线道路,每次可以前进1格或2格;设计算法计算有多少种方式走到终点? 实现一个能够生产不同类型手机(Android、iPhone)的工厂,考虑未来可能的扩展 第一题并发相关。 第二题算法相关:斐波那契数列。 第一步:找出规律 public class Solution...

qq_32100465的博客 1345

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

阿里面试,我挂在了第四轮……

本文来源|程序员私房菜作者|倪升武责编|林瑟可能每个技术人都有个阿里梦,我也不例外。最近准备跳槽,前一阵子在准备各种面试,也面了几个大厂,包括阿里。是的,最后...

优快云大数据 4584

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

两个线程打印不同类型的字母

一、题目描述: 两个线程分别打印26个英文字母的元音字母和辅音字母,分别按照字母序输出。 二、解题思路: (1) 如果要求输出一行 感觉看代码都可以看明白了… (2)如果要求输出两行 由于线程之间共享全局变量,所以可以将26个字母保存到一个全局数组中,并且保存当前访问到数组元素的下标。然后再创建两个数组分别保存元音字母和辅音字母,不同的线程添加不同类型的字母到对应的字母表中,最后遍历打印元音字母表...

冷山不生云 423

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Java多线程-交叉打印26个字母

关于多线程的面试题, 两个线程交叉打印26个字母, 在这里用代码给实现一下.

能力工场小马哥 1987

编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。

#include #include #include #define NUM 10 pthread_mutex_t mutex; pthread_cond_t conda; pthread_cond_t condb; pthread_cond_t condc; int floga = 0; int flogb = 0; int flogc = 0; void *thread_a(vo

FunkyFrog821951259的博客 1064

双线程输出26个大小写字母

public class English { private class Upper implements Runnable { public void run() { upper(); } } private class Lower implements Runnable { public void run() { lowe...

web开发自学 1247

java中让步的_Java中线程让步可以通过_____方法来实现。(2.0分)_学小易找答案

【简答题】完成试频《1和许多》的活动名称和目标【判断题】同一个类中所有的同步的静态方法,它们在类范围内是同步的,也就是同一时间只能有一个线程可以访问所有同步静态方法中的一个。(2.0分)【简答题】【简答题】编写一个程序,使用 Runnable 接口的方式创建三个线程,分别输出从 0 到 10 的数,每个线程之间延迟 500 毫秒,要求输出的结果如下所示: 线程一 : 0,1,2,3,4,5,6,7...

weixin_32228727的博客 393

编写一个程序,开启3个线程,这3个线程分别输出A、B、C,要求在屏幕上打印10遍,输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。

#include <iostream> #include <thread> #include <condition_variable> #include <mutex> #include <atomic> using namespace std; atomic<int> control_int; mutex s_mute...

guniwi的博客 1735

c语言中如何输出26个英文字母,菜鸟求助,写一个随机输出26个英文字母的程序...

该楼层疑似违规已被系统折叠隐藏此楼查看此楼#include #include // 用srand、rand函数了#include // 用time函数了#define LEN 32// 产生min~max的随机数 (包含min和max)// rand函数产生0 ~ RAND_MAX 的随机数// 一般上不同编译器要求 RAND_MAX 的值(至少)为 32767#define RAND(mi...

weixin_35178718的博客 439

P174——编写一个程序,创建一个包含26个元素的数组,并在其中存储26个小写字母。然后打印数组的所有内容

#include &lt;stdio.h&gt; int main(void) { char ch[26]; int i; for(i=0;i&lt;26;i++) { ch[i]='a'+i; printf("%c",ch[i]); } getchar(); return 0; }

沉迷科研刘昊然 5472
上一篇: mq知识总结
下一篇: java 线程 join(wait) 后,是如何唤醒
还不够
博客等级 码龄16年 113粉丝 24原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值