一:简单的时钟表

收获:虽然代码很短,但是做这个题的时候头脑清晰,相对之前有了框架基础,和逻辑思维

思路:定义Display类,其中有变量value,limit,函数increase,getValue

          定义另一个类Clock,定义hour ,minute,增加函数

package clock;

//编写一个简单的时钟
public class Display {
    private int value=0;//所要的到的值
    private int limit=0;//所需要比较的值
    
    Display(int limit){
        this.limit=limit;
    }
    public void increase() {//不断加1,并判断变0的条件
        value++;
        if(value==limit)
            value=0;
    }
    public int  getValue() {
        return value;
    }
    public static void main(String[] args) {
        Display display=new Display(24);
        for(;;)
        {
            display.increase();    //调用increase函数
            System.out.println(display.getValue());
        }
    }
}
package clock;
/*
 * 若Clock和上一个类Display没有在同一个包里
 * 要想对其进行调用,需要在此文件里增加包
 * import Display.Clock;
 */
public class Clock {
    private Display hour=new Display(24);//定义Display的对象hour
    private Display minute=new Display(60);//定义Display的对象minute
    
    public void start() {
        while(true)
      {
        minute.increase();
        if(minute.getValue()==0)
        {
            hour.increase();
        }
        System.out.println(hour.getValue()+":"+minute.getValue());
      }
    }
 public static void main(String[] args) {
    Clock clock=new Clock();
    clock.start();
  }
}

二;记事本

思路:能存储记录,统计存储的数量

          查看所有存进去的记录

          删除所要删除的信息

          查看记录信息的列表

package nodebook;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;

import org.omg.CORBA.PRIVATE_MEMBER;


/*
 *  做一个简单的记事本
 * 1.添加事情add
 * 2.可以删除指定事情remove
 * 3.可以查看列表list
 * 4.可以查看指定位置的信息
 * 5.计算总信息量的数量
 * 
 * 思路:定义接口
 * 在逐步完成各个接口的内容
 * 主函数中对其进行调用
 */
public class NodeBook {
     
    private  ArrayList<String> notes=new ArrayList<String>();//定义容器
    public static int size=0;
    
    public void add(String s) {
        //增加信息
        notes.add(s);
        size++;
    }
    public int getSize() {
        //返回信息的数量
        return size;
    }
    public void getNode(int index) {
        //返回指定位置的信息
        notes.get(index);
    }
    public void removeNode(int index) {
        //删除指定位置的信息
        notes.remove(index);
        size--;
    }
    public String[] listNode() {
        String[] a=new String[notes.size()];
        return notes.toArray(a);
        //把notes中的内容填入到数组a中
    }
    
    
    //主函数
//    public static void main(String[] args) {
//        NodeBook nodeBook=new NodeBook();
//        nodeBook.add("first");
//        nodeBook.add("second");
//        nodeBook.add("third");
//        String[] aString=nodeBook.listNode();
//        for(String s:aString) {  //输出数组aString中的值
//            System.out.println(s);
//        }
//        System.out.println(nodeBook.getSize());
//        System.out.println("---------------------------");
//        nodeBook.add("fourth");
//        nodeBook.removeNode(2);
//        nodeBook.listNode();
//        String[] b=nodeBook.listNode();
//        for(String s:b) {
//            System.out.println(s);
//        }
//        System.out.println(nodeBook.getSize());
//        System.out.println("---------------------------");
//        
//    }
    public static void main(String[] args) {
         HashSet<String> nodeBook=new HashSet<String>();
         //不可以显示多个相同的信息
            nodeBook.add("fifth");
            nodeBook.add("sixth");
            nodeBook.add("seventh");
            nodeBook.add("fifth");
            //String[] aString=nodeBook.listNode();
            for(String s:nodeBook) {
                   System.out.println(s);
            }
            System.out.println(nodeBook.size());
            System.out.println("---------------------------");
            
            ArrayList<String> node=new ArrayList<String>();
            //可以显示多个相同的信息
                node.add("fifth");
                node.add("sixth");
                node.add("seventh");
                node.add("fifth");
            //String[] aString=nodeBook.listNode();
            for(String s:node) {
                   System.out.println(s);
            }
            System.out.println(node.size());
            System.out.println("---------------------------");
         
    }
}

代码截图:

 

 三:中英转换

     散列表:可以任何实现hash()函数的类的对象做值来存放对象,Hash表是非常有用的数据结构

package translation;
//数据结构
import java.util.HashMap;
import java.util.Scanner;
//先定义接口
public class Translation {
   private HashMap<Integer, String> tran=new HashMap<Integer, String>();
   //集合
   public Translation() {
       //将相对应的信息存放在哈希表中
       tran.put(1,"one");
       tran.put(2,"two");
       tran.put(3,"tree");
       tran.put(4,"four");
       tran.put(5,"fifth");
       tran.put(6,"sixth");
   }
   public String getEnglish(int index) {
       return tran.get(index);
   }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Translation translation=new Translation();
        
        Scanner scanner=new Scanner(System.in);
        System.out.println("请输入需要转换的数字(1-6):");
        int a=scanner.nextInt();
        String name=translation.getEnglish(a);
        System.out.println(name);
    }

}

测试截图:

 

posted on 2019-11-06 10:28  阡陌祁画  阅读(245)  评论(0编辑  收藏  举报