为了账号安全,请及时绑定邮箱和手机立即绑定

java异常处理、ArrayList类的处理方法、 线程的基本方法(以题为例)

标签:
Java

和大家分享几道基础的异常处理、ArrayList类的处理方法、 线程的基本方法的题目,感兴趣的读者可以自己试着写下,题目较为简单,我在底下的图片中给出了自己做的结果仅供参考,如有误请批评指正,也欢迎大家一起交流。
1.有如下程序,是异常处理(Try/Catch)的例子,完成的功能为捕获异常,并进行处理(输出错误信息)。请将下面程序的【代码】替换为Java代码,使程序运行正确。

文件Main.java
public class Main {
public static void main(String[] args) {
【代码1】{
int i = 0;
i = 3 / i;// 将产生算术运算异常。
} catch (ArithmeticException e)// 找到了匹配的异常,执行该catch块。
{
System.out.println("发生了ArithmeticException异常");
} 【代码2】 (ArrayIndexOutOfBoundsException e)// 不是匹配的异常,则不会再捕获
// 异常,如果发生数组下标(索引)超出范围所产生的异常,将执行该catch块。
{
System.out.println("发生了ArrayIndexOutOfBoundsException异常");
} catch (Exception e)
// 前两个catch块均无法捕获try块中发生的异常时,才会执行该catch块。
{
System.out.println("发生了异常");
} 【代码3】 {
{
System.out.println("执行Finally");
}
}
}
}

图片描述
2.有如下程序,是异常处理(Try/Catch)的例子,完成的功能为捕获异常,并进行处理(输出错误信息)。请将下面程序的【代码】替换为Java代码,使程序运行正确。

文件Main.java
import java.util.*;
public class Main {
    public static void main(String[] args) {
        // 键盘输入数n作为分母,做除法
        Scanner in = new Scanner(System.in);
        int y = 0;
        int n = 0;
        【代码1】 {
            n = in.nextInt();
            y = (3 / n);
        } catch (【代码2】 e) {//输入数据不匹配
            // TODO Auto-generated catch block
            e.printStackTrace();//显示堆栈数据
            System.out.println("请输入整数!");
        } catch (ArithmeticException e) {
            // TODO Auto-generated catch block
            System.out.println("请输入非零整数!");
        } 【代码3】 (Exception e) {
            // TODO Auto-generated catch block
            System.out.println("出现了未知情况!");
        }
        System.out.println("程序正常结束!");
    }
}

图片描述
图片描述
3.有如下程序,是自定义异常处理类(继承Exception)的例子,完成的功能为键盘输入字符串作为异常处理提示信息。请将下面程序的【代码】替换为Java代码,使程序运行正确。

文件Main.java
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String st=in.nextLine();// 键盘输入字符串作为提示信息
        try {
            【代码1】 new MyException(st);
        } catch (MyException e) {
            // TODO Auto-generated catch block
            System.out.println(st);
        }
    }
}
// 子类,继承Exception
class MyException extends 【代码2】 {
    public MyException() {
        super();
        // TODO Auto-generated constructor stub
    }
    public 【代码3】(String s) {
        super(s);
        // TODO Auto-generated constructor stub
    }
}

图片描述
4.以下程序是有关ArrayList类的方法的例子,请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java 
import java.util.*;
public class Main {
public static void main(String[] args) {
Show aShow =new Show();//显示元素
ArrayList【代码1】 list1=new ArrayList<String>();
【代码2】.ensureCapacity(200);
Scanner scanner=new Scanner(System.in);
list1.add("abc");
list1.add("123");
int i=scanner.nextInt();
list1.【代码3】(Integer.toString(i));//转换为字符串再加入
aShow.showList(list1);
Object[] ob=list1.【代码4】();//转换为字符串
String st1=(String)ob[0];//取出下标为0的元素
System.out.println("下标为0的元素为:"+st1);
String st2=list1.【代码5】(2);//取出下标为2的元素
System.out.println("下标为2的元素为:"+st2);
list1.【代码6】;//删除下标为1的元素
aShow.showList(list1);
ArrayList<String> arrayList1 = new ArrayList();
arrayList1.add(0, "The" ); 
arrayList1.add( 1, "fox" );
arrayList1.add( 1, "jumps" );
arrayList1.【代码7】(1,list1);//将list1加入arrayList1
aShow.showList(arrayList1);
}
}
//显示元素的类
class Show{
public void showList(ArrayList<String> s) {
Iterator<String> iter=s.iterator();
while(iter.hasNext()){
String st=iter.next();
System.out.print(st+"  ");
}
System.out.println();
}
}

输入:
n个数
输出:
按程序运行结果

样例输入:
66
样例输出:
abc 123 66
下标为0的元素为:abc
下标为2的元素为:66
abc 66
The abc 66 jumps fox
图片描述
5.以下程序是使用ArrayList类对键盘输入的整数数组进行排序,请将下面程序的【代码】替换为Java程序代码,使程序运行正确。

文件Main.java
import java.util.*;
public class Main {
public static void main(String[] args) {
Show aShow =new Show();//显示元素
ArrayList<【代码1】> list1=new ArrayList<Integer>();
Scanner in=new Scanner(System.in);
int n=in.nextInt();
list1.ensureCapacity(n);
while(n--【代码2】0){//输入n个数
    int k=in.nextInt();
    list1.add(k);//加入元素
}
【代码3】.sort(list1);//排序
aShow.showList(list1);
}
}
//显示元素的类
class Show{
    public void showList(ArrayList<Integer> list1) {
            Iterator<【代码4】> iter=list1.iterator();
            while(iter.hasNext()){
                int st=iter.next();
                System.out.print(st+"  ");
        }
            System.out.println();
    }
}

图片描述
6.下面程序通过arraylist存储数据,然后运用object中的方法计算散列码之和,但类HashCodeSum中部分代码缺失.请编写程序代码,使程序运行正确。

文件Main.java
 
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner reader=new Scanner(System.in);
int n=reader.nextInt();
ArrayList<Integer> a=new ArrayList<Integer>();
for(int i=0;i<n;i++)
a.add(reader.nextInt());
HashCodeSum x=new HashCodeSum();
System.out.println(x.sum(a));//显示结果
        System.out.println("The Main class is end.");
}
}
class HashCodeSum{
int sum(ArrayList<Integer> a){
int sum=0;
/*-----请编写代码-----*/

 
 
/*-----编写的代码结束-----*/
return (sum);
}
}

输入:
n
n个数
输出:
n个数之和
The Main class is end.

样例输入:
3
1 3 4
样例输出:
8
The Main class is end.
图片描述
7.有如下程序,是线程的例子,完成的功能为输出字符串。请将下面程序的【代码】替换为Java代码,使程序运行正确。

文件Main.java
 
import java.util.*;
public class Main extends 【代码1】 {
	static String s;
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		s = scanner.nextLine();
		【代码2】 t = new Main();
		t.start();
	}
	public void 【代码3】() {
		System.out.println(s);
	}
}

图片描述
8.有如下程序,是线程的例子,完成的功能为输出字符串。请将下面程序的【代码】替换为Java代码,使程序运行正确。

文件Main.java
 
import java.util.*;
public class Main 【代码1】 Runnable{
	static String s;
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		s = scanner.nextLine();
	【代码2】 t=new Thread(new 【代码3】);
	t.【代码4】;
	}
	@Override
	public void run() {
		// TODO Auto-generated method stub
		System.out.println(s);
	}
}

图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消