java字符串特性练习-答案

上传人:公**** 文档编号:494316166 上传时间:2022-11-23 格式:DOC 页数:13 大小:51.51KB
返回 下载 相关 举报
java字符串特性练习-答案_第1页
第1页 / 共13页
java字符串特性练习-答案_第2页
第2页 / 共13页
java字符串特性练习-答案_第3页
第3页 / 共13页
java字符串特性练习-答案_第4页
第4页 / 共13页
java字符串特性练习-答案_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《java字符串特性练习-答案》由会员分享,可在线阅读,更多相关《java字符串特性练习-答案(13页珍藏版)》请在金锄头文库上搜索。

1、选择题:1。下面程序段执行完毕后,cont的值是( C )String strings =string,starting,strong,street,soft;int cont=0;for(int i=0;istrings.length;i+) if(stringsi.endsWith(ng) cont+;A. 1 B. 2 C.3 D.42. 定义字符串:String str=“abcdefg”;则str.indexOf(d)的结果是(C )A) d B) true C) 3 D) 43。定义变量b:boolean b=true;则String.valueOf(b)的类型是( B )A) b

2、oolean B) String C) false D) int4。下面程序段输出的结果是( A ) StringBuffer buf1; String str=”北京2008”;buf1=new StringBuffer(str);System.out.println(buf1.charAt(2);A. 2 B. 京 C0 D.null5. 下面程序段输出的结果是( D ) String s=”ABCD”; s.concat(“E”); s.replace(C,F); System.out.println(s);A) ABCDEF B) ABFDE C) ABCDE D) ABCD6.下面的

3、 语句序列执行完后,n的 值是( D ) int n=0; StringTokenizer st=new StringTokenizer(I wonder should I go,or should I stay?); while(st.hasMoreTokens() n+; String ss=st.nextToken(); A) 9 B) 10 C) 11 D) 87. 下面的 语句序列执行完后,n的 值是( A ) int n=0; String str=”I wonder,what?”; StringTokenizer str2=new StringTokenizer(str,“,?”

4、); while(str2.hasMoreTokens() str2.nextToken(); System.out.println(“n=”+n);A)2 B) 3 C) 4 D) 5二 填空题。1定义数组:char charArray=a,b,c,d,e,f;则String.valueOf(charArray,2,3)的 结果是 cde 。2下面语句序列输出结果是 pro 。 String s=new String(“java program!”);System.out.println(s.substring(5,8);3.下面语句输出结果是 1234abcdef5 。char charA

5、rray=a,b,c,d,e,f;StringBuffer buf1;String str=”12345”;buf1=new StringBuffer(str);buf1.insert(4,charArray);System.out.println(buf1.toString();4.如有以下赋值语句:x=new StringBuffer().append(“a”).append(4). append(“c”).toString; x的类型是 StringBuffer ;它的值是 a4c 。5下面程序的功能是统计以“st”开头的字符串有多少个,完成下面程序填空。 public class Cl

6、ass1public static void main(String args) String strings=“string”,”starting”,”strong”,”street”,”soft”; int cont=0; for(int i=0; i strings.length ;i+) if(stringsi.startsWith(“str”) cont+;System.out.println(cont);第九章多线程机制一、判断题 1.如果线程死亡,它便不能运行。(T )2.在 Java 中,高优先级的可运行线程会抢占低优先级线程。( T) 3.一个线程在调用它的 start 方法

7、之前,该线程将一直处于出生期。(T ) 4.当调用一个正在进行线程的 stop( )方法时,该线程便会进入休眠状态。(F ) 5.一个线程可以调用 yield 方法使其他线程有机会运行。(T ) 6. 线程可以调用yield方法使低优先级的线程运行。(F)二、选择题 1.Java 语言中提供了一个D线程,自动回收动态分配的内存。 A 异步 B 消费者 C 守护 D 垃圾收集 2.Java语言避免了大多数的C错误。 A 数组下标越界 B 算术溢出 C 内存泄漏 D 非法的方法参数 3.有三种原因可以导致线程不能运行,它们是ACD。 A 等待 B 阻塞 C 休眠 D 挂起及由于 I/O 操作而阻塞

8、 4.当A方法终止时,能使线程进入死亡状态。 A run B setPrority C yield D sleep 5.用B方法可以改变线程的优先级。 A run B setPrority C yield D sleep 6.线程通过C方法可以使具有相同优先级线程获得处理器。 A runB setPrority C yield D sleep 7.线程通过D方法可以休眠一段时间,然后恢复运行。 A run B setPrority C yield D sleep 8.B方法使对象等待队列的第一个线程进入就绪状态。 A run B notify C yield D sleep 9.方法 resu

9、me( )负责重新开始D线程的执行。 A 被 stop( )方法停止 B 被 sleep( )方法停止 C 被 wait( )方法停止 D 被 suspend( )方法停止 10.BCD方法可以用来暂时停止当前线程的运行。 A stop( ) B sleep( ) C wait( ) D suspend( ) 三、简述题 1.简述程序、进程和线程之间的关系?什么是多线程程序? 答:程序是一段静态的代码,它是应用软件执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程。每一个进程都有自己独立的一块内存空间、一组系统资源。线程是比进程更小的执行单位。一个进程在

10、其执行过程中,可以产生多个线程,形成多条执行线索,每个线程都有其产生、发展和消亡的过程。2.线程有那 5 个基本状态?它们之间如何转化?简述线程的生命周期。答案:线程有“新建” 、 “就绪” 、 “阻塞” 、 “运行” 、 “死亡”5 个基本状态。线程对象被创建时进入“新建”状态;程序执行语句启动这个线程后,它进入线程队列排列等待 CPU 时间片,称为“就绪”状态;等 CPU 时间和其他资源齐备时就进入“运行”状态;线程运行完毕或者被强制终止则进入“死亡”状态。上述线程各状态之间的转换就构成了线程的基本生命周期。3.什么是线程调度?Java 的线程调度采用什么策略?答案:安排线程队列中 CPU

11、 时间的线程被称为线程调度。Java 的线程调度采用优先级基础 上的“先到先服务”策略。 4.如何在 Java 程序中实现多线程?答案: 在 Java 程序中实现多线程最关键是要定义子线程的操作, 即定义子线程的 run( )方法。 具体可以通过派生 Thread 类的子类或实现 Runnable 接口两种方式来实现。 5.试简述 Thread类的子类或实现 Runnable 接口两种方法的异同? 答案:派生 Thread 子类时通过重载父类的方法 run( )来定义子线程的具体操作,然后在主线程中创建并启动该子类的对象为子线程。实现了 Runnable 接口的类必须要实现接口中的 run(

12、)方法,其中同样定义了子线程的操作。但是这个方法中的子线程不是 Thread 子类的对象,而是 Thread 类的对象;在创建 Thread 类对象时把实现了 Runnable 接口和 run( )方法的类作为参数传递给该对象,从而规定它的具体操作。 四、编程题 1.利用多线程技术编写 Applet 程序,其中包含一个滚动的字符串。字符串从左向右运动,当所有的字符都从屏幕的右边消失后,字符串重新从左边出现并继续向右移动。 Xianch.javaimport java.awt.*; import java.applet.*; public class Xianch extends Applet

13、implements Runnable final String rollingMessage = SAILING, SAILING, I AM SAILING.; Thread m_Draw = null; int beginX; public void init() m_Draw = new Thread(this); public void paint(Graphics g) g.drawString(rollingMessage, beginX, 40); public void start() m_Draw.start(); try Thread.sleep(50); catch(InterruptedException e) public void stop() if(m_Draw.isAlive() m_Draw.stop(); public void run() try while(true) beginX = +beginX % getWidth(); repaint();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号