1. 简易计算器
问题描述:编写程序模拟简单的计算器,定义名为Number的类,其中有两个整型数据成员n1和n2定义为私有,编写构造方法赋予n1和n2初始值,再为该类定义addition,subtration,multiplication,division四个方法,分别实现加,减,乘,除的功能,在main方法中创建Number的对象, 调用各个方法并显示计算结果
代码实现:
import java.util.Scanner;
public class Calculator {
@SuppressWarnings("resource")
public static void main(String[] args) {
// TODO Auto-generated method stub
double n1,n2;
Scanner sc=new Scanner(System.in);
System.out.print("请输入两个数:");
n1=sc.nextDouble();
n2=sc.nextDouble();
Number num=new Number(n1,n2);
System.out.println("相加="+num.addition());
System.out.println("相减="+num.subtration());
System.out.println("相乘="+num.multiplication());
System.out.println("相除="+num.division());
}
}
class Number{
double n1,n2;
Number(double n1,double n2){
this.n1=n1;
this.n2=n2;
}
public double addition(){
return n1+n2;
}
public double subtration(){
return n1-n2;
}
public double multiplication(){
return n1*n2;
}
public double division(){
return n1/n2;
}
}
2. 斐波那契数列
问题描述:斐波那契数列:1、2、3、5、8、13、21…… 从第3个数开始,每一个数都等于它前面的两个数的和。生成这个数列的前20项并打印输出
代码实现:借助数组实现
import java.util.Arrays;
public class Fibonacci {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr=new int[20];
arr[0]=1;
arr[1]=2;
for(int i=2;i<20;i++){
arr[i]=arr[i-1]+arr[i-2];
}
System.out.println("斐波那契数列前20项为:");
System.out.print(Arrays.toString(arr));
}
}
结果输出:斐波那契数列前20项为:[1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946]
3. 西游记
问题描述:西游记中,3个徒弟,共同的方法(吃斋,念佛,取经),孙悟空自己的方法(除妖),猪八戒自己的方法(牵马),沙和尚自己的方法(挑行李)
代码实现:使用继承、多态实现
public class XiYouJi {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("孙悟空的行为:");
show(new SunWuKong());
System.out.println();
System.out.println("猪八戒的行为;");
show(new ZhuBaJie());
System.out.println();
System.out.println("沙和尚的行为:");
show(new ShaHeShang());
}
public static void show(TangSeng ts){
ts.Eating();
ts.ChantBuddha();
ts.TakeScriptures();
if(ts instanceof SunWuKong){ // 孙悟空的行为
SunWuKong houge=(SunWuKong)ts;
houge.Demon();
}
if(ts instanceof ZhuBaJie){ // 猪八戒的行为
ZhuBaJie bajie=(ZhuBaJie)ts;
bajie.TakeHorse();
}
if(ts instanceof ShaHeShang){ // 沙和尚的行为
ShaHeShang shaseng=(ShaHeShang)ts;
shaseng.PickLuggage();
}
}
}
class TangSeng{
public void Eating(){ //吃斋抽象方法
System.out.println("吃斋");
}
public void ChantBuddha(){ //念佛抽象方法
System.out.println("念佛");
}
public void TakeScriptures(){ //取经方法
System.out.println("取经");
}
}
class SunWuKong extends TangSeng{
public void Demon(){ // 除妖方法
System.out.println("除妖:");
System.out.println("智取芭蕉扇");
System.out.println("三打白骨精");
System.out.println("引蛇出洞");
}
}
class ZhuBaJie extends TangSeng{
public void TakeHorse(){ // 牵马方法
System.out.println("牵白龙马");
}
}
class ShaHeShang extends TangSeng{
public void PickLuggage(){ // 挑行李方法
System.out.println("挑行李");
}
}