欢迎光临散文网 会员登陆 & 注册

培训班学习Java第二天

2023-06-28 19:16 作者:兴趣使然的无名主播  | 我要投稿

紧接昨天,上机题。

1、输入一个字符串,判断这个字符串是否对称。(例如abcba算对称  abccba也算对称)

思考:

            头尾遍历比较,设置标志flag=true,当头尾两值不同时,令flag=flase。(注意关闭scanner。)


2、实现HashMap的value排序

思考:

  1. 将HashMap中的元素按照Entry<Key,Value>类型存入到ArrayList集合中。

  2. 实现自定义排序,对ArrayList集合排序。


3、设计一个线程(使用自定义线程池),使得字符串”成都是一座你来了就不想走的城市” 每隔1秒钟输出一个字符。  运 行结果如下:(多行输出)

成都

成都是

成都是一

成都是一座

成都是一座你
…… 

成都是一座你来了就不想走的城市


思考:

        首先要求使用自定义线程池,需使用ThreadPoolExecutor(),要想以问题要求的方式输出字符可以使用双重遍历,也可以直接调用字符串方法subString()。

ThreadPoolExecutor()参数:

第一个参数 int corePoolSize : 核心线程数

第二个参数 int maximumPoolSize : 最大线程数

第三个参数 long keepAliveTime : 临时线程最大存活时间(这是一个数值,并没有单位)

第四个参数 TimeUnit unit : 临时线程最大存活时间(这个是单位) 枚举 (用法:枚举类名.枚举项名)

第五个参数 BlockingQueue<Runnable> workQueue : 阻塞队列(用于存储还没有执行的线程任务)

第六个参数 ThreadFactory threadFactory : 线程工厂

第七个参数 RejectedExecutionHandler handler : 默认拒绝处理策略(当线程任务数量超过了最大线程数+阻塞队列长度时才会起作用)


创建对象实现run()方法:

主方法:

方法二:


4、任意输入一个字符串,编程输出这个字符串中第一个没有重复的字符的下标和该字符。

如字符串为“dfablkfdalk”,则输出:3-b,如果所有字符均重复则输出“没有不重复的字符”。


5、我们班现在要选举产生最卷的学生,每人有一次投票权,每人的票可以投给任意的学生

用面向对象编程实现这个功能。(假设班级人数6人)。

学生类:

主方法:


6、郭靖去银行办了一张银行卡和存折,卡上存了1000元,郭靖把存折给了黄蓉,他们俩

同时去银行两个柜台,一人用银行卡,一人用存折取款,每次只能取100块,请使用多线

程编程实现他们取出这1000块钱的过程。.

run方法:

主方法:



培训班学习Java第二天的评论 (共 条)

分享到微博请遵守国家法律