Java上机题目及答案代码

更新时间:2024-01-27 19:24:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Java上机实践三

实验题目1

假设字符串s1、s2、s3的定义如下: String s1 = “A String”; String s2 = “A String”; String s3 = s1;

请写出下列表达式的值: s1 == s2 s1 == s3 s1.length() s1.equals(s2) s1.equals(s3) s1.compareTo(s2) s1.compareTo(s3) s1.concat(s3) s1.indexOf(‘t’) s3.lastIndexOf(‘t’) 实验目的

(1) 熟悉字符串类String。

(2) 学习创建类String的对象。

(3) 学习使用类String执行字符串操作。

实验步骤

(1) 按题目的要求创建String对象s1、s2,并声明对象引用s3指向s1; (2) 调用String类的相关方法,执行指定操作并输出结果。

package lab1;

public class Showstr { public static void main(String[] args){ String s1 =\ String s2 =\ String s3 = s1; System.out.println(s1 == s2); System.out.println(s1 == s3); System.out.println(s1.length()); System.out.println(s1.equals(s2)); System.out.println(s1.equals(s3)); System.out.println(s1.compareTo(s2)); System.out.println(s1.compareTo(s3)); System.out.println(s1.concat(s3));

}

}

System.out.println(s1.indexOf('t')); System.out.println(s3.lastIndexOf('t'));

实验2 Java异常处理

一、实验目的

1) 掌握Java异常的概念及工作机制 2) 掌握异常的分类 3) 掌握抛出异常语句的使用(throw)

4) 掌握抛出捕获处理异常语句的使用(try?catch?finally) 5) 掌握上抛异常语句的使用(throws) 6) 掌握创建自定义异常 二、实验环境

JDK1.6+Eclpise3.2

三、实验内容

1、编写一个应用程序,要求从键盘输入一个double型的圆的半径,计算并输出其面积。测试当输入的数据不是double型数据(如字符串“abc”)会产生什么结果,怎样处理。

package lab2;

import java.util.InputMismatchException; import java.util.Scanner;

public class Err_1 { public static void main(String[] args){ Scanner reader=new Scanner(System.in); double r; try{ r=reader.nextDouble(); System.out.println(3.14*r*r); } //System.out.println(3.14*r*r); catch(InputMismatchException e){ System.out.println(\数据类型错误\ } } }

2、计算两个正数之和,当任意一个数超出范围时,抛出自己定义的异常(NumberRangeException)。

package lab2;

import java.util.Scanner;

import com.sun.org.apache.xalan.internal.xsltc.compiler.sym; class NumberRangeException extends Exception{

NumberRangeException(String msg){ super(msg); } }

public class Err_2 { public static void main(String[] args){ Scanner reader=new Scanner(System.in); try{ int a=reader.nextInt(); int b=reader.nextInt(); if(a<=0||b<=0){ NumberRangeException e=new NumberRangeException(\number beyond range!\

throw e; } System.out.println(a+b); } catch(NumberRangeException e){ System.out.println(e.toString()); } } }

实验3 输入和输出

1.实验目的

了解流式输入输出的基本原理;掌握类File、FileInputStream、FileOutputStream的使用方法。

2.实验内容 (1)编程:检查C:\\WINDOWS\\setuplog.txt文件是否存在,若在则显示该文件的名称和内容。

package lab3;

import java.io.File;

import java.io.IOException; import java.util.Scanner;

public class Inout{ private static Scanner in; public static void main(String[] args)throws IOException{ try{ File f1=new File(\ System.out.println(\ System.out.println(f1.getName()); in = new Scanner(new File(\

while (in.hasNextLine()) { String str = in.nextLine(); System.out.println(str); } } catch(IOException e){ System.out.println(e.getMessage()); } } }

(2)编程:输入5个学生的信息(包含学号、姓名、3科成绩),统计各学生的总分,然后将学生信息和统计结果存入二进制数据文件STUDENT.DAT中。3.实验要求 编程时,应考虑异常处理。

package lab3;

import java.io.FileOutputStream; import java.io.IOException;

import java.io.ObjectOutputStream; import java.io.RandomAccessFile; import java.util.Scanner;

import javafx.beans.value.WritableObjectValue;

class Student{ String snum; String name; int a,b,c,sum; public void Info(){ Scanner reader=new Scanner(System.in); System.out.println(\ name=reader.next(); System.out.println(\ snum=reader.next(); System.out.println(\ a=reader.nextInt(); b=reader.nextInt(); c=reader.nextInt(); sum=a+b+c; reader.close(); } }

public class Inout_2{ public static void main(String[] args)throws IOException{

}

}

try{ FileOutputStream raf=new FileOutputStream(\ ObjectOutputStream out=new ObjectOutputStream(raf); Student []stu=new Student[5]; for(int i=0;i<5;i++){ stu[i]=new Student(); (stu[i]).Info(); out.writeObject(stu[i]); }

out.close(); }

catch(IOException ioe){ System.out.println(ioe); }

catch(Exception e){ System.out.println(e); }

实验题目4

设计计算器的GUI界面,理解使用Java中的布局管理器。

package lab4;

import java.awt.FlowLayout;

import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import java.util.ArrayList;

import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JTextArea;

public class MyFrame extends JFrame{

private JButton btn0=new JButton(\ private JButton btn1=new JButton(\ private JButton btn2=new JButton(\ private JButton btn3=new JButton(\ private JButton btn4=new JButton(\

});

btnclear.addActionListener(new ActionListener() { @Override

public void actionPerformed(ActionEvent e) { input.setText(\ signpos.clear(); } }); }

private double operator(double operA,int i,String str) {

double

operB=i==signpos.size()-1?Double.parseDouble(str.substring(signpos.get(i)+1))

:Double.parseDouble(str.substring(signpos.get(i)+1,signpos.get(i+1)));

switch(str.charAt(signpos.get(i))) {

case '+':

operA+=operB; break; case '-':

operA-=operB; break; case '*':

operA*=operB; break; case '/':

operA/=operB; break; }

if(i==signpos.size()-1) return operA; else

return operator(operA,i+1,str); }

public static void main(String[] args) {

MyFrame mf=new MyFrame(\?°?×?μ??????÷\ mf.setVisible(true); } }

本文来源:https://www.bwwdw.com/article/gukw.html

Top