文档库 最新最全的文档下载
当前位置:文档库 › java第三章上机练习题

java第三章上机练习题

java第三章上机练习题
java第三章上机练习题

习题1. 数据类型转换应用

【案例简介】下例说明了整型、浮点型、字符串型之间的相互转换。

【案例目的】掌握Java中两个不兼容类型能够的数据格式之间的转换。

【技术要点】高精度到低精度的数据转换时候需要进行强制转换,低精度向高精度进行转换的时候的会自动进行,字符串到其他类型的转换需要用到特定的方法。

【代码分析】

public class Conversation

{

public static void main(String [] args)

{

String str = "123";

int j;

byte b;

int i=257;

double d = 323.142;

System.out.println("\nConversion of int to byte.");

//i强制转换成byte型

System.out.println("i and b "+ i + " "+b);

System.out.println("\nConversion of double to int.");

//d强制转换成int型

System.out.println("d and i "+ d + " "+i);

//d强制转换成byte型

System.out.println("d and b "+ d + " "+b);

j=Integer.parseInt(str); //str转换成int型

System.out.println("j="+j);

}

}

【相关知识】

数据类型转换

(1)简单数据类型中各类型数据间的优先关系和相互转换

不同类型数据间的优先关系如下

低----------------------------------------------->高

byte->short->char-> int -> long -> float -> double

自动类型转换规则

整型,实型,字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级。

(2)强制类型转换

高级数据要转换成低级数据,需用到强制类型转换,如:

int i;

byte b=(byte)i; //把int型变量i强制转换为byte型

(3)其他转换

数字变为字符串

用如下方法转换相应类型的数字:

Double.toString(double);

Float.toString(float);

Long.toString(float);

Integer.toString(float);

Short.toString(float);

Byte.toString(Byte);

也可以使用字符串类的valueOf方法:

String.valueOf(各种类型的数值变量);

还可以用空字符串连接数字,将数字转换为字符串。如:""+25。

数字类型转换为各种常用进制的字符串类

toBinaryString(long or int):转换为二进制形式的字符串类。

toOctalString(long or int):转换为八进制形式的字符串类。

toSexString(long or int):转换为十六进制形式的字符串类。

字符串转换为数字

Byte.parseByte(string):转换为字节型的数值。

Short.parseShort(string):转换为短整型的数值。

Integer.parseInt(string):转换为整型的数值。

Long.parseLong(string):转换为长整型的数值。

Float.parseFloat(string):转换为单精度型的数值。

Double.parseDouble(string):转换为双精度型的数值。

2.4 数组和字符串

习题2. 求平均成绩

【案例简介】数组A中存放有10个学生某门课程的成绩、输出这10个学生的平均成绩。

【案例目的】掌握Java一维数组的使用方法,包括数组的动态初始化、静态初始化等。

【技术要点】数组的静态初始化方法及访问方法。

【代码分析】

public class Score

{

public static void main(String[] args)

{

int a[] ={ 90,87,67,81,89,96,76,71,91,57},i,sum=0;

double ave;

//求平均成绩ave

System.out.println("Average="+ave);

}

}

【相关知识】

1.数组的概念

数组是Java语言中的一种复合数据类型,它是由类型相同的元素组成的有顺序的数据集合。

在一个数组中每个元素的数据类型都是相同的,数组元素可以是基本类型、对象类型,也可以是数组类型。

数组要经过定义、分配内存及赋值后才能使用。

2.数组的定义

type arrayName[ ];

type [ ]arrayName;

type arrayName[ ][ ];

type [ ][ ]arrayName;

类型(type)可以为Java中任意的数据类型,包括简单类型和复合类型。

例如:

int intArray[ ];

Date dateArray[];

int b[][];

3.数组的初始化

(1)静态初始化

例如:

int intArray[]={1,2,3,4};

String stringArray[]={"abc", "How", "you"};

int intArray[ ][ ]={{1,2},{2,3},{3,4,5}};

注意:Java语言中,由于把二维数组看作是数组的数组,数组空间不是连续分配的,所以不要求二维数

组每一维的大小相同。

(2)动态初始化

简单类型的数组

例如:

int intArray[];

intArray = new int[5];

int a[][] = new int[2][3];

int b[][] = new int[2][ ];

b[0] = new int[3];

b[1] = new int[5];

4.数组元素的引用

一维数组元素的引用方式为:

arrayName[index]

index为数组下标,它可以为整型常数或表达式,下标从0开始。每个数组都有一个属性length指明它的长度,

例如:intArray.length指明数组intArray的长度。

二维数组中元素的引用方式为:

arrayName[index1][index2]

例如:num[1][0];

的一个。

习题3. 多维数组矩阵转置

【案例简介】将3*4的多维数组转置为4*3的多维数组。

【案例目的】掌握多维数组以及交错数组的使用方法。

【技术要点】数组的静态初始化方法及访问方法。

【代码分析】

public class Matrix

{

public static void main(String[] args)

{

int a[][]={{1,2,3,4},

{2,3,4,5},

{3,4,5,6}};

int b[][]= new int[4][3];

int i,j;

System.out.println("转换前");

//利用两重循环进行显示数组

//利用两重循环进行转置

System.out.println("转换后");

//利用两重循环进行显示数组

}

}

2.5流程控制

习题4. 打印出九九乘法表

【案例目的】掌握Java循环流程的控制。

习题5. 求一元二次方程的根。

【案例目的】掌握Java分支流程的控制。

【技术要点】根据参数的不同,分别进行有根、无根、重根的判别。

方程

求根

提示:Math.sqrt(a) 求a的平方根

【代码分析】

public class roots

{

public static void main(String [] args)

{

int a,b,c;

float x1,x2;

int check;

a=1;

b=2;

c=1;

System.out.println("方程式为:"+a+"x^2+"+b+"x+"+c+"=0");

System.out.println("方程解为:");

//如果有重根

//如果有不同两个根

//否则无根

}

}

【相关知识】

1. 控制语句

Java程序通过控制语句来执行程序流,完成一定的任务。程序流是由若干个语句组成的,语句可以是单一的一条语句,如c=a+b,也可以是用大括号{}括起来的一个复合语句。Java中的控制语句有以下几类:◇分支语句:if-else,switch

◇循环语句:while,do-while,for

◇与程序转移有关的跳转语句:break,continue,return

2. 分支语句

分支语句提供了一种控制机制,使得程序的执行可以跳过某些语句不执行,而转去执行特定的语句。(1)条件语句if-else

if(boolean-expression)

statement1;

[else statement2;]

(2)多分支语句switch

switch (expression){

case value1 : statement1;

break;

case value2 : statement2;

break;

…………

case valueN : statemendN;

break;

[default : defaultStatement; ]

}

◇expression的返回值类型必须是这几种类型之一:int,byte,char,short。

◇case子句中的值valueN必须是常量,各case子句中的值应是不同的。

◇default子句是可选的。

◇break语句用来在执行完一个case分支后,使程序跳出switch语句,即终止switch语句的执行(在一些特殊情况下,

多个不同的case值要执行一组相同的操作,这时可以不用break)。

2-6 习题

习题6:猜数字游戏

编写一个Java应用程序,实现以下功能:

程序随机分配一个1~100之间的整数,用户在输入自己的猜测,程序返回提示信息,分别是“猜大了”、“猜小了”、“猜对了”。用户可以根据提示信息再次输入猜测,直到提示信息是“猜对了”

提示:

// 新建一个随机数产生器,然后生成一个0到10之间的整数,代码如下:

import java.util.Random;

Random random = new Random();

int number = random.nextInt(10);

//获取控制台整数输入,代码如下:

import java.util.Scanner;

Scanner sc = new Scanner(System.in);

int guess_number=sc.nextInt();

完整代码:

Java上机练习题

Java 复习题 第一章 1、分别用Java应用程序和Java小程序编写程序:在屏幕上输出“Hello,欢迎来到精彩的 Java世界!”。 程序:①应用程序:HelloWorld1.java ②小程序:HelloWorld.java和A.htm Java 应用程序: 《HelloWorld1.java》 public class HelloWorld1{ public static void main(String[] args){ System.out.println("Hello,欢迎来到精彩的Java世界!"); } } Java 小程序: 《HelloWorld.java》 import java.applet.Applet; import java.awt.Graphics; public class HelloWorld extends Applet{ public void paint(Graphics g){ g.drawString("Hello,欢迎来到精彩的Java世界!",2,20); } } 《A.htm》 我的第一个JAVA Applet程序 第二章 1、26页案例3:TriangleArea.java(三角形面积) 编写一个java程序,已知三角形三边边长,求三角形面积。要求三条边长从控制台输入。其中4,3,6分别代表三角形的三条边。 《TriangleArea.java》 public class TriangleArea{ public static void main(String[] args){ double a=Double.parseDouble(args[0]); double b=Double.parseDouble(args[1]); double c=Double.parseDouble(args[2]); if(a+b<=c||a+c<=b||b+c<=a)

java上机练习题

要求:代码规范,代码风格,思路正确,功能实现 1、设计一个能随机产生100个大写英文字母的方法,在该方法中统计产生了多少元音字母,并输出这个数字。 2、编写一个矩形类Rect,包含: 两个protected属性:矩形的宽width;矩形的高height。 两个构造器方法: (1)一个带有两个参数的构造器方法,用于将width和height属性初化; (2)一个不带参数的构造器,将矩形初始化为宽和高都为10。 两个方法: (1 求矩形面积的方法area() (2 求矩形周长的方法perimeter() 4.编写一个Java源程序,在程序中建立一个含10个整型(int)元素的一维数组,对数组中的每个元素赋值,然后按下标的逆序输出。 5. 设计一个圆类(Circle),将圆的位置(圆心坐标和半径)作为属性(提供任意圆的设置),并能计算圆的面积。 Circle类必须满足以下要求: (1) 圆类Circle 的属性有: cPoint_x : int型,代表圆心横坐标。 cPoint_y : int型,代表圆心纵坐标。 cRadius: double型,代表圆的半径。 cPI: double型,最终静态变量初值为3.14,代表圆的圆周率。 cArea: double型,代表圆的面积。 (2) 圆类Circle 的方法有: Circle ( ) : 构造函数,将圆的圆心置坐标原点,半径置1。 Circle ( int x , int y, double r) : 构造函数,形参 r 为半径的初值,x为横坐标的初值,y为纵坐标的初值。 double cAreaCount() : 计算当前圆类对象的面积并赋值给Circle类的cArea属性,返回cArea的值给此方法的调用者。 String toString( ) : 把当前圆类对象的圆心坐标、半径以及面积组合成“圆心为(x, y)半径为r的圆的面积为cA”字符串形式,其中x、 y、r和cA分别为横坐标、纵坐标、半径和面积的数据。 7、猜数游戏 随机生成一个数 输入一个数 如果比随机生成的数大,显示“猜错了,比这个数小” 如果比随机生成的数小,显示“猜错了,比这个数大” 如果相等,显示“恭喜你,答对了” 8、写一个彩票程序

java上机实验

一、实验内容描述(问题域描述) 实验目的:熟悉JDK的安装、配置和使用,掌握Java Application程序的基本结构。 实验内容: (1)安装JDK,并练习设置JAVA_HOME、path和classpath环境变量;(2)编写一个打印出”HelloWorld”的Java Application程序,并编译运行 二、实验设计(包括实验方案设计,实验手段的确定,实验步骤,实验过程等)

一. 实验内容描述(问题域描述) :熟悉Java的各种类型、掌握java的变量定义及表达式的运算等。 实验内容: (1)编写一个程序计算长方形的面积和周长。长方形的宽和高要求从键盘输入。 (2)尝试使用Math类提供的随机数生成方法,产生一个1~100的随机整数并输出。 import java.util.Scanner; public class Juxing { public static void main(String[] args) { // TODO Auto-generated method stub int s=0,l=0; Scanner sc= new Scanner(System.in); System.out.println("请输入长h,回车换行"); int h=sc.nextInt(); System.out.println("请输入宽w,回车换行"); int w=sc.nextInt(); s=h*w; l=2*(h+w); System.out.println("长方形面积为s="+s); System.out.println("长方形周长为l="+l); } } 2. public class shuzi { public static void main(String[] args) { // TODO Auto-generated method stub System.out.print((int)(Math.random()*100)); }

java 上机练习题

上机练习一 一、将Vehicle 和VehicleDriver两个文件用自己的文本编辑器重新编辑并编译和运行,掌握类和对象的定义和使用 1、V ehicle.java (注意:以下代码有几个错误的地方,需要同学自己把他们找出来并更正过来) public class Vehicle{ public float journey; public int wheelNum; public int loadNum; public int driveSpeed; /** *Vehicle 类构造函数,设定初始值 */ public Vehicle(){ journey=100.3f; wheelNum=4; loadNum=1; } /** *Vehicle类的driveAt行驶方法 */ public void driveAt(int speed){ if (speed>=60){ System.out.println("行车速度太快,容易造成事故"); //如果要求的车速太快,则机动车自动以40单位速度行驶 driveSpeed=40; } else {

System.out.println("你在安全行驶速度内行驶"); driveSpeed=speed; } } } 2、V ehicleDriver.java public class VehicleDriver{ public String name; //定义司机的名字 /** *VehicleDriver 类构造函数 */ public VehicleDriver(){ name="TOM"; } /** *VehicleDriver 类对象的work方法 */ public void work(){ Vehicle v=new Vehicle(); //生成Vehicle类的对象v v.driveAt(70); //调用v对象所固有的driveAt()方法 } public static void main(String args[]){ //生成VehicleDriver类的对象vb VehicleDriver vd=new VehicleDriver(); vd.work(); //调用vd对象所固有的work()方法

Java实验题目

Java实验题目 一、 (1).编写Java应用程序,定义byte、short、int、long、float、double、char和boolean 等类型的数据并用一个输出语句输出,要求每行输出一个数据。 (2).编写Java小应用程序,输出两行字符串:“Java很有趣。”和“努力学习Java 编程。”,输出的起点坐标是(20,20),行距是50像素。 (3).使用算术运算符得到一个4位十进制数的各位数字并输出,然后输出该数的逆序数和各位数字平方后相加的和。 (4).编写Java小应用程序,用三目条件运算符求程序中给定的4个double数的最大值和最小值并输出结果。 实验报告题:使用算术运算符得到一个4位十进制数的各位数字并输出,然后输出该数的逆序数和各位数字平方后相加的和。 二、 1、数据类型与表达式的使用 自己编写程序测试各种运算符的使用。例如,以下程序是测试Java的数据类型:public class UseVarible { public static void main(String args []) { boolean b = true; short si = 128; int i = -99; long l = 123456789L; char ch = 'J'; float f = 3.1415925F; double d = -1.04E-5; String s = "你好!"; System.out.println("布尔型变量b="+ b); System.out.println("短整型变量si="+ si); System.out.println("整型变量i="+ i); System.out.println("长整型变量l="+ l); System.out.println("字符型变量ch="+ ch); System.out.println("浮点型变量f="+ f); System.out.println("双精度型变量d="+ d); System.out.println("字符型对象s="+ s); } } 2、数组的创建与使用 编写并运行P.23例1-5,例1-6。 3、思考与上机练习 (1). 编写Java应用程序,其中定义一个int数组(数组元素任意指定),将数组

《JAVA基础教程》第三章 Java程序设计基础

第三章Java程序设计基础 3.1 Java编程概况 现在你可以复习一下Java语言的背景材料,它的基本结构象C/C++,但任何用面向过程语言编写过程序的人都可以了解Java语言的大部分结构. 3.1.1程序结构 Java语言的源程序代码由一个或多个编译单元(compilation unit)组成,每个编译单元只能包含下列内容(空格和注释除外):*一个程序包语句(package statement )*入口语句(import statements) *类的声明(class declarations)*界面声明(interface declarations) 每个Java的编译单元可包含多个类或界面,但是每个编译单元最多只能有一个类或者界面是公共的。Java的源程序代码被编译?reg;后,便产生了Java字节代码。Java的字节代码由一?copy;不依赖于机器的指令组成,这?copy;指令能被Java的运行系统(runtimesystem)有效地解释。Java的运行系统工作起来如同一台虚拟机。在当前的Java实现中,每个编译单元就是一个以.java为后缀的文件。每个编译单元有若干个类,编译后,每个类生成一个.class文件。.class文件是Java虚拟机能够识别的代码。 3.1.2 注释 三种类型如下://注释一行/*一行或多行注释*//**文档注释**/文档注释一般放在一个变量或函数定义?reg;前,指示在任何自动生成文档系统中调入。这?copy;注释都是声明条目的描述.。 3.1.3 标识符 变量,函数,类和对象的名称都是标识符,程序员需要标识和使用的东西都需要标识符。在Java语言里,标识符以字符或_,$开头,后面可以包含数字,标识符是大小写有区别的,没有长度限制。 有效的标识符 myname ict_network Hello _sys_path $bill 例子:int a_number; char _onechar; float $bill; 关键词 abstract continue for new switch boolean default goto null synchronized break do if package this byte double implements private threadsafe byvalue else import protected throw case extends instanceof public transient catch false int return true char final interface shorttry class finally long static void const float native super while 其它保留词以下单词被保留使用:cast future generic inner operator outer rest var 3.1.4 数据类型 Java使用五种基本类型:integer(整数),floating(浮点数),point(指

Java面向对象编程上机-练习题汇总

【练习题】类的成员变量: 猜数字游戏:一个类A有一个成员变量v,有一个初值100。定义一个类,对A 类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。 【练习题】类的成员变量: 请定义一个交通工具(Vehicle)的类,其中有: 属性:速度(speed),体积(size)等等 方法:移动(move()),设置速度(setSpeed(int speed)),加速speedUp(),减速speedDown()等等. 最后在测试类Vehicle中的main()中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。 【练习题】类的成员变量与方法、构造方法 在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。 定义名为MyTime的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。 为MyTime类定义构造方法,以方便创建对象时初始化成员变量。 再定义diaplay方法,用于将时间信息打印出来。 为MyTime类添加以下方法: addSecond(int sec) addMinute(int min) addHour(int hou) subSecond(int sec) subMinute(int min) subHour(int hou) 分别对时、分、秒进行加减运算。 【练习题】构造方法 编写Java程序,模拟简单的计算器。 定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。编写构造方法,赋予n1和n2初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量执行加、减、乘、除的运算。 在main方法中创建Number类的对象,调用各个方法,并显示计算结果。 【练习题】构造方法: 编写Java程序,用于显示人的姓名和年龄。 定义一个人类(Person),该类中应该有两个私有属性,姓名(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将姓名和年龄打印出来。

Java程序设计上机实验

班级号一学号_姓名一题号java(多文件应压缩为rar): 实验1:熟悉上机环境,编写并运行简单的java程序(3学时)实验目的 (1)熟悉Java程序开发环境J2SDK+JCreator的安装及使用 ⑵熟悉Java Application 和Applet程序的结构及开发步骤 ⑶熟练掌握if语句的使用 ⑷掌握Math.sqrt()等常用数学函数的用法 ⑸熟悉System.out.print()的用法 实验内容及要求 按Java Application 和Applet两种方式分别编写程序,求 一元二次方程ax2+bx+c=0的根(系数在程序中给定),并输出。 思考并验证 (1)分别给定以下几组系数,给出输出结果 a=1,b=5,c=3 a=4, b=4, c=1 a=2, b=3, c=2 : + i ________ +_ _______ i ⑵如果程序的public类的类名和源文件的文件名不一样会有什

么问题? (3) 将类的public 修饰去掉是否可行?接着再将类名换为其它是 否可行?这说明了什么? (4) 将程序中main 前面的public 去掉,重新编译执行你的程序,你看到 了什么信息? (5) 将程序中main 前面的static 去掉,重新编译执行你的程序,你看到 了什么信息?为什么? (6) 本次上机中,你还遇到了什么问题,是如何解决的?

班级号一学号_姓名一题号java (多文件应压缩为rar ): 实验 2:控制流程 1(3 学时 ) 实验目的 (1) 进一步熟悉使用 if 语句 (2) 掌握循环语句实现循环的方法 实验内容及要求 输出时,只使用下面的语句: System.out.print( “ ”); // 不换行 System.out.print( “* ”); // 并且不换行 System.out.print( “+”); // 并且不换行 System.out.println( “*”;) // 并换行 编写程序输出(注:在图形的中心处有一个加号 ' +'): 思考并验证 下面程序片段给出了从键盘输入一个整数的方法: import java.io.*; 输出一个空格, 并且 输出一个字符' * ', 输出一个字符' +', 输出一个

常见的Java上机面试题

常见的Java上机面试题 在程序员面试中,主要的考试形式分为笔试和上机编程考试两部分。笔试主要考查面试者的基础是否牢固;上机考试主要考查面试者的实际开发能力和技术技巧。 上机编程考试,要求面试者能够根据题目的要求,使用一种编程工具,编写全部代码并调试运行。这主要是考查面试者代码书写和编程的熟练程度。值得注意的是,这类面试题要求能够正确运行,往往要求面试者使用比较原始的JDK编译方式也就是使用DOS命令提示符,而不是提供Eclipse或者JBuilder等快速开发环境。本章将经常出现的上机编程题进行分类,希望能够给读者带来帮助和启示。 17.1 Java基础编程试题(1) 在上机编程类的面试题中,大部分涉及基础编程,例如算法、语法、常用的类等知识点。 面试题1 怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出"我ABC",而不是"我ABC+汉的半个"。 试题分析 本面试题容易产生困惑的是中文字符和英文字符,在这里需要考虑汉字和英文字符的占用字节数问题,中文字符占两个字节,英文字符占一个字节,理解了这个,就很容易完成本题了。 参考答案 具体代码实现如下: 1.package core_java; 2.import java.util.Scanner; 3.public class InterceptionStr { 4.static String ss; //要进行截取操作的字符串 5.static int n; //截取的字符串的字节数 6.public static void main(String[] args) { 7. System.out.println("请输入字符串:"); 8. Scanner scStr = new Scanner(System.in); //从键盘获取字符串 9. ss = scStr.next(); // 将Scanner对象中的内容以字符串的形式取出来 10. System.out.println("请输入字节数:"); 11. Scanner scByte = new Scanner(System.in); //从键盘获取字符串 12. n = scByte.nextInt(); //将Scanner对象中的内容以数值的形式取出来

西电计算机Java上机实验题目

Java课程上机练习题 一、J ava语言基础 实验目标: 掌握Java语法;掌握Java程序结构;掌握Java编译、调试、运行的方法。实验要求: 编写一个程序,程序提供两种功能: 1.用户输入一个整数,程序计算并输出从1开始到该整数的所有整数之和; 同时,计算并输出不大于该整数的所有素数的数目。 2.用户输入一个数字串,程序判断该数字串各位上数字的奇偶性,并分别输出奇、偶数位的计数值及各位的加和值。 程序应具有良好的人机交互性能,即:程序应向用户提示功能说明,并可根据用户的功能选择,执行对应的功能,并给出带详细描述信息的最终执行结果。 二、J ava的面向对象特性 实验目标: 掌握面向对象的编程方法;掌握Java的面向对象特性;掌握采用面向对象技术构建系统的一般方法。 实验要求: 编写一个程序,程序提供对图形的绘制功能(模拟绘制,采用文本输出的形式表现绘制内容): 1.构建所有图形的父类:Shape,该类中定义图形的基本属性及方法。 2.构建基本图形类:矩形(Rectangle)、圆(Circle)、正三角形(Triangle)。 3.可通过多态实现对任意图形的绘制。 4.定义静态方法,该方法可以对传入的对象实例进行判断,并输出该对象实例的类型。 5.定义静态方法,该方法可以输出传入的对象实例的中心点坐标。

6.构建测试类,该类实现与用户的交互,向用户提示操作信息,并接收用户的操作请求。 程序应具有良好的类层次结构,良好的人机交互性能,即:程序应向用户提示功能说明,并可根据用户的功能选择,执行对应的功能,并给出带详细描述信息的最终执行结果。 三、J ava的高级语言特征 实验目标: 熟悉Java的泛型;了解Java的泛型特点;初步掌握Java的泛型编程方法。实验要求: 编写一个程序,程序提供记事本功能: 1.构建记事本类,该类能存储不定数量的记录;能获得已经存储的记录数量;能追加记录;能展示已经存储的全部记录或其中任何一条记录;能删除已经存储的全部记 录或其中任何一条记录。 2.构建测试类,该类实现与用户的交互,向用户提示操作信息,并接收用户的操作请求。 程序应具有良好的人机交互性能,即:程序应向用户提示功能说明,并可根据用户的功能选择,执行对应的功能,并给出带详细描述信息的最终执行结果。 四、J ava的输入输出 实验目标: 掌握Java输入输出类;掌握Java输入输出特点;掌握Java输入输出编程方法。 实验要求: 编写一个程序,程序实现对用户指定的文本文件中的英文字符和字符串的个数进行统计的功能,并将结果根据用户选择输出至结果文件或屏幕。 1.构建统计类,该类实现对I/O的操纵;实现对文本文件中英文字符、字符串的统计;实现对统计结果的输出。 2.构建测试类,该类实现与用户的交互,向用户提示操作信息,并接收用

JAVA上机实验参考

《JAVA上机实验参考》 目录 实验一JDK开发工具 (1) 向生成的源文件中添加代码 (4) 编译并运行程序 (5) 构建并部署应用程序 (6) 实验二Java语言基础 (7) 实验三控制语句 (10) 实验四类与对象 (11) 实验五接口、包与泛型 (12) 实验六字符串处理 (16) 实验七异常处理 (18) 实验八输入与输出处理 (21) 实验九多线程 (23) 实验十Applet (25) 实验十一Swing图形界面设计 (28) 实验一JDK开发工具 一、实验目的 1.熟悉JDK开发环境。 2.熟悉Netbeans IDE的使用。 二、实验内容 要学完本教程,您需要具备以下软件和资源。 软件或资源要求的版本 NetBeans IDE版本7.2、7.3、7.4 或8.0 Java 开发工具包(JDK)版本6、7 或8

设置项目 要创建IDE 项目,请执行以下操作: 1. 启动NetBeans IDE。 2. 在IDE 中,选择"File"(文件)> "New Project"(新建项目),如下图所示。 3. 在新建项目向导中,展开"Java" 类别,然后选择"Java Application"(Java 应用程序),如下图 所示。然后,单击"Next"(下一步)。

4. 在向导的"Name and Location"(名称和位置)页中,执行以下操作(如下图所示): ?在"Project Name"(项目名称)字段中,键入HelloWorldApp。 ?将"Use Dedicated Folder for Storing Libraries"(使用专用文件夹存储库)复选框保留为取消选中状态。 ?在"Create Main Class"(创建主类)字段中,键入helloworldapp.HelloWorldApp。 5. 单击"Finish"(完成)。 此时将创建项目并在IDE 中打开。此时,您应该看到以下组件:

Java基础知识点复习资料

1、classpath的设置及作用:设置为set classpath=“绝对路径”。作用是指定Java类的执 行路径。是用来寻找class文件的。 2、path的设置及作用:是内部命令。在编译Java的时候需要用到javac命令在执行java 的时候要用到java命令,这两个命令不时windows自带的命令,所以我们使用的时候要设置好环境变量,这样就可以在任何目录下使用了。 3、JA V A数据类型:基本数据类型(数值型(整型(byte.short.int.long)、浮点型 (float.double))、字符型(char)、布尔型(boolean))、引用数据类型(class.数组、接口)。 4、JA V A基本运算符号:赋值运算符、算术运算符、关系运算符、逻辑运算符、条件运 算符、括号运算符。 5、JA V A程序基本控制语句: 1、if (判断条件) { 语句1; 语句2; } 2、if(判断条件) { 语句1; } else { 语句2; } 3、switch(表达式) { case 选择值1;语句主体1; break; case 选择值2;语句主体2; break; case 选择值3;语句主体3; break; default:语句主体; } 4、for(赋初始值;判断条件;赋值增减量) { 语句; } 5、while(判断条件) { 语句1; 语句2; } 6、do {

语句1; 语句2; } while(判断条件); break跳出循环。continue跳出本次循环进入到下次循环。 6、数组的概念及使用:数组是由一组相同类型的变量所组成的数据类型,它们以一个共 同的名称来表示。 格式一:数据类型数组名[] 数组名=new 数据类型[个数] 例:int i[] i=new int[8] 格式二:数据类型数组名[]=new 数据类型[个数] 例:int i=new int[8] 7、方法的声明及使用:完成某一特定功能的代码块。 返回值类型方法名称(类型参数1,类型参数2) { 程序语句; return表达式; } 8、方法的重载:在同一个类中允许同时存在一个以上的同名方法,只要他们的数据类型 参数个数不同即可。 例如:public static int Test(int i,intj) { return i+j; public static int Test(int x) { return x++; } pubic static double Tset(double m,double n) { return m+n; } public static int Test(int a,int b,int c) { return a-b+c; } } 在程序中Test方法被重载了4次,但每个重载了的方法所能接受参数的个数和类型不同。 9、类的定义: 将具有相同属性及相同行为的一组对象称为类。广义的讲,具有共同性质的事物的集合就称为类。 class 类名称 {

Java上机实验-类的使用

实验名称Java上机实验二 姓名:山水不言学号:xxxxxx 一、实验内容 ○1编程创建一个Box类。要求:定义三个实例变量分别表示立方体的长、宽和高,定三个构造方法(必须包含一个无参构造方法,一个满参构造方法)对这3个变量进行初始化,然后定义一个方法求立方体的体积。创建一个对象,求给定尺寸的立方体的体积。 实验思路: 创建一个Box类,将它的长宽高以及体积实例变量设为private,类中声明一个求体积的public方法。设置三个构造函数来对者三个变量初始化: 1、构造函数有三个参数,分别对应实例的长、宽和高。构造函数 可以对变量赋值合法性进行判断。 2、构造函数有两个参数则对应实例的长和宽,高默认为1,构造 函数可以对函数合法性进行判断。 3、构造函数没有参数实例的长宽高默认为0 在另一个类里创建3个Box对象,调用volume函数分别求体积。 实验源代码: package com.box; public class box_demo { public static void main(String[] args) {

// TODO自动生成的方法存根 Box box1=new Box(); Box box2=new Box(12.3,34.1); Box box3=new Box(12.3,34.1,10.0); System.out.print("the volume of the box1:"+box1.volume()+"\n"); System.out.print("the volume of the box2:"+box2.volume()+"\n"); System.out.print("the volume of the box3:"+box3.volume()); } } package com.box; public class Box { private double height; private double width; private double length; private double volume; public Box() { this.height=0; this.length=0; this.width=0; } public Box(double Box_len,double Box_wid,double Box_height) { if(Box_len<0) this.length=0; else this.length=Box_len; if(Box_wid<0) this.width=0; else this.width=Box_wid; if(Box_height<0) this.height=0; else this.height=Box_height; } public Box(double Box_len,double Box_wid) {

java第三章上机练习题

习题1. 数据类型转换应用 【案例简介】下例说明了整型、浮点型、字符串型之间的相互转换。 【案例目的】掌握Java中两个不兼容类型能够的数据格式之间的转换。 【技术要点】高精度到低精度的数据转换时候需要进行强制转换,低精度向高精度进行转换的时候的会自动进行,字符串到其他类型的转换需要用到特定的方法。 【代码分析】 public class Conversation { public static void main(String [] args) { String str = "123"; int j; byte b; int i=257; double d = 323.142; System.out.println("\nConversion of int to byte."); //i强制转换成byte型 System.out.println("i and b "+ i + " "+b); System.out.println("\nConversion of double to int."); //d强制转换成int型 System.out.println("d and i "+ d + " "+i); //d强制转换成byte型 System.out.println("d and b "+ d + " "+b); j=Integer.parseInt(str); //str转换成int型 System.out.println("j="+j); } } 【相关知识】 数据类型转换 (1)简单数据类型中各类型数据间的优先关系和相互转换 不同类型数据间的优先关系如下 低----------------------------------------------->高 byte->short->char-> int -> long -> float -> double 自动类型转换规则 整型,实型,字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级。 (2)强制类型转换 高级数据要转换成低级数据,需用到强制类型转换,如: int i; byte b=(byte)i; //把int型变量i强制转换为byte型 (3)其他转换 数字变为字符串 用如下方法转换相应类型的数字: Double.toString(double); Float.toString(float);

《Java程序设计》上机实验

实验 1: 熟悉上机环境,编写并运行简单的java 程序( 3 学时) 实验目的 (1)熟悉 Java 程序开发环境 J2SDK+JCreator的安装及使用 (2)熟悉 Java Application 和 Applet 程序的结构及开发步骤 (3)熟练掌握 if 语句的使用 (4)掌握 Math.sqrt()等常用数学函数的用法 (5)熟悉 System.out.print()的用法 实验内容及要求 按Java Application 和 Applet 两种方式分别编写程序,求一元二次方程 ax2+bx+c=0 的根(系数在程序中给定),并输出。 思考并验证 (1)分别给定以下几组系数,给出输出结果a=1, b=5, c=3 a=4, b=4, c=1 a=2, b=3, c=2:+ i + i (2)如果程序的 public 类的类名和源文件的文件名不一样会有什么问题? (3)将类的 public 修饰去掉是否可行?接着再将类名换为其它是否可行?这说明了什么 ? (4)将程序中 main 前面的 public 去掉,重新编译执行你的程序,你看到了什么信息? (5)将程序中 main 前面的 static 去掉,重新编译执行你的程序,你看到了什么信息?为 什么? (6)本次上机中,你还遇到了什么问题,是如何解决的? 第1 页

实验 2:控制流程1(3 学时 ) 实验目的 (1)进一步熟悉使用 if 语句 (2)掌握循环语句实现循环的方法 实验内容及要求 输出时,只使用下面的语句: System.out.print(“”); //输出一个空格,并且不换行System.out.print(“*”); //输出一个字符’*’,并且不换行System.out.print(“+”); //输出一个字符’+’,并且不换行System.out.println(“*”;) // 输出一个字符’*’,并换行 编写程序输出(注:在图形的中心处有一个加号’+’): * * * * ***** ***+*** ***** * * * * 思考并验证 下面程序片段给出了从键盘输入一个整数的方法: import java.io.*; InputStreamReader ir; BufferedReader in; ir=new InputStreamReader(System.in); in=new BufferedReader (ir); try {String s=in.readLine(); int i=Integer.parseInt(s);//转换成整形

华南农业大学2015农科Java上机实验

实验1 创建、编译和运行Java程序 17268 计算两个整数的和 从键盘输入两个整数,计算并输出两个整数的和。 import java.util.Scanner; public class Main { public static void main(String[] args) { int a,b; Scanner input = new Scanner(System.in); a=input.nextInt(); b=input.nextInt(); int c = a + b; System.out.println(c); } } 17269 输出两个整数中的较大的值 从键盘输入两个整数,判断并输出两个整数中较大的值。 import java.util.Scanner; public class Main { public static void main(String[] args) { int a,b; Scanner input = new Scanner(System.in); a=input.nextInt(); b=input.nextInt(); if(a>b) System.out.println(a); else System.out.println(b); } } 实验2 基本数据类型、运算和表达式18135 在显示屏上显示指定字符 要求编写一个程序,在显示屏上显示如下内容。注:类名必须为Main(大写M) C:\ABC.TXT is "file" public class Main { public static void main(String[] args) { System.out.print("C:\\ABC.TXT is \"file\""); } }

java上机训练题

Java 上机训练题 1.编写程序,输入两个整数:1500和350,求出它们的商和余数并输出。 2.编写程序,读入三个整数给a,b,c,然后交换它们中的数,把a中原来的值 给b,b中原来的值给c, c中原来的值给a,且输出改变后的a,b,c的值。 3.输入两个整型变量a,b的值,输出a+b,a-b,a*b,a/b,(float)a/b,a%b的结果, 要求连同算式一起输出,每个算式占一行。 例:a等于10,b等于5,a+b的结果输成 10+5=15 4.输入一个非负数,计算以这个数为半径的圆周长和面积。 5.输入任意一个三位数,将其各位数字反序输出(例如输入123,输出321). 6.输入任意大小的三个整数,判断其中是否有两个奇数一个偶数。若是,则输 出“YES”,不是则输出“NOT” (要求用条件表达式进行判断,不使用if 语句) 7.求出100至300内所有百位和个位相加能被3整除的数字。 8.编程求S=1/1!+1/2!+1/3!+........+1/n!直到1/n!<=1e-6 9.编写程序实现用一元人民币换成一分、两分、五分的硬币共50枚。 10.输入1个四位数,求各位数字的平方和。 例如:输入 1234,输出30。 11.写出满足不等式1+1/2+1/3+1/4+...+1/N>15最小的N值,并输出s的值。 12.铁路托运行李规定:行李重不超过50公斤的,托运费按每公斤0.15元计费; 如超50公斤,超过部分每公斤加收0.10元。编一程序完成自动计费工作。 13.相邻两个奇数都为素数的这样一对数叫双胞胎素数,输出100到200之间的所有双胞胎素数。 14.输入一串字符以“#”结束,如果它是大写字母转换为小写字母输出,如果是小写字母转换为大写字母输出。如果不是字母,则照直输出。 15.输入一个四位数,要求将它的千位、百位、十位、个位上的数字按由小到大排列,输出一个新数。(如:输入 4287 要求输出为 2478) 16.输入两门课的成绩,如果两门成绩都在60分以上。则输出“it is pass.”只要有一门低于60分就输出“it is not pass.”如果输入的任何一门成绩不在0-100范围内则输出“it is error.”。(要求用switch语句来编程) 17.求任一数字的所有因子的组合(仅限两个因子),如:15=1*15 ,15=3*5不能出现重复。如:15=5*3,15=15*1就不用输出。 18.从键盘输入几个数,以0作为结束标志,判断其正负,并求其平方和。

Java上机题目及答案代码

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) https://www.wendangku.net/doc/6c3782486.html,pareTo(s2) https://www.wendangku.net/doc/6c3782486.html,pareTo(s3) s1.concat(s3) s1.indexOf(‘t’) https://www.wendangku.net/doc/6c3782486.html,stIndexOf(‘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 ="A String"; String s2 ="A String"; 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(https://www.wendangku.net/doc/6c3782486.html,pareTo(s2)); System.out.println(https://www.wendangku.net/doc/6c3782486.html,pareTo(s3)); System.out.println(s1.concat(s3));

相关文档