黑马程序员技术交流社区

标题: java练习题 [打印本页]

作者: zjy9399    时间: 2016-9-21 19:10
标题: java练习题


验证码小程序,要求如下:
1.        随机生成4个A-Z(包含A和Z)的字符,将随机获取的4个字符拼接成字符串作为验证码
2.        键盘录入一个字符串,将字符串和验证码进行匹配(最多可以匹配3次),如内容一致则在控制台打印输出"验证成功"并结束程序,如内容不一致且未达到最高的匹配次数,则继续输入字符串进行匹配,如内容不一致且已达到最高的匹配次数,在控制台提示"你输入验证次数达到3次,请明天再输入!",并将之前输入过的字符串全部打印输出,结束程序



使用QueryRunner实现Flower的添加、更新、查找和删除操作,要求如下:
1.        创建一个花(Flower)类,有私有属性id(int类型),brand(String类型),color(String类型)和 price(double类型)
2.        定义类Query,在main方法中创建Flower对象f并给属性赋值:”芍药”,”白色”,3,主键自动增长。
2.1 传递f调用添加方法将f的所有属性存入数据库表flower中;
2.2 定义double类型变量price=7,传递f和price调用更新方法更新flower表数据
2.3调用查询方法,查询flower表数据
2.4调用删除方法,删除flower表数据

3.        定义添加方法static void addFlower(Flower f) ,添加f的所有属性到flower数据库表中
4.        定义更新方法static void updateFlower(Flower f,double price),
5.        定义查找方法static void searchFlower(),查询出flower数据表中颜色为“白色”,并且价格在2块钱以上的手机,并把花的所有属性打印在控制台上。
6.        定义删除方法static void deleteFlower(),删除品种为“菊花”的数据。
提示:已提供相应的建表sql(test.sql)、相关jar包和工具类DBCPUtils


保存输入记录的小程序,要求如下:
项目根目录下创建文件data.txt,文件用来存放键盘录入的数据
文件存放数据的格式要求:
1. 键盘每录入一次数据就将录入的数据在文件中存放成一行
2. 文件中最多存放5行
3.根据数据存放的时间上下排序,最早录入的在最后一行,最后录入的数据在文件的第一行

作者: Makie_Jame    时间: 2016-9-21 22:01
//第一题
import java.util.Scanner;

public class Test {
        public static void main(String[] args) {
                String code = randomCode();//产生随机码
                System.out.print("请输入验证码(" + code + "):");
                Scanner input = new Scanner(System.in);//创建Scanner对象
                String s = input.next();
                int time = 1;
                final int LASTTIMES = 3;//最多输入次数
                while (true) {

                        //判断次数
                        if (time == LASTTIMES) {
                                System.out.println("你输入的验证次数达到3次,请明天输入!");
                                break;
                        }

                        //判断用户输入与验证码是否匹配
                        if (s.toUpperCase().equals(code)) {
                                System.out.println("验证成功");
                                break;
                        } else {
                                System.out.println("输入不正确请在输入一次!");
                                System.out.print("请输入验证码(" + code + "):");
                                s = input.next();//可使用户再次输入
                        }

                        time++;
                }
        }

        public static String randomCode() {
                String code = "";
                for (int i = 0; i < 4; i++) {
                        code += (char) (Math.random() * 26 + 65);
                }
                return code;
        }
}
作者: miye    时间: 2016-10-9 15:41
本帖最后由 miye 于 2016-10-9 15:43 编辑

第三题最后的一个要求:根据数据存放的时间上下排序,最早录入的在最后一行,最后录入的数据在文件的第一行这个要求怎么完成?


作者: wolfking0608    时间: 2016-10-9 17:03
/*保存输入记录的小程序,要求如下:
项目根目录下创建文件data.txt,文件用来存放键盘录入的数据
文件存放数据的格式要求:
1. 键盘每录入一次数据就将录入的数据在文件中存放成一行
2. 文件中最多存放5行
3.根据数据存放的时间上下排序,最早录入的在最后一行,最后录入的数据在文件的第一行
* */
public class 聊天记录 {
   public static void main(String[] args) throws IOException {
        File file = new File("data.txt");
         file.createNewFile();
         Scanner sc = new Scanner(System.in);
         BufferedWriter bw = new BufferedWriter(new FileWriter(file));
         ArrayList<String> list = new ArrayList<>();
         int flag=0;
         while(true){
                 
         System.out.println("请录入数据");
         String str = sc.nextLine();
          list.add(str);
         flag++;
         if(flag==5){
                 break;
         }
         }
         Collections.reverse(list);
        for (String string : list) {
                //System.out.println(string);
                 bw.write(string);
                  bw.newLine();
        }
        bw.close();
        System.out.println("存储完毕");
}
}

作者: 王宇轩    时间: 2017-1-22 14:38
可以的啊啊啊啊啊啊啊啊
作者: 袁志娜    时间: 2017-1-24 20:21

作者: Mbs2016    时间: 2017-1-25 01:42
挺麻烦

作者: 咖啡easy灬    时间: 2017-1-26 22:48
一看就眼花了。不知基础学习多久可以做出来




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2