A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 936994215 中级黑马   /  2016-6-20 20:07  /  6304 人查看  /  31 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

我是走流程考完入学考试报的面试,只有2天时间,由于本人 大四事情特别多,没法好好的去复习Java基础,打算抱着侥幸的心理面试看看效果。面试是这样的,上来给2道编程题如下图

2道编程题共30分,时间50分钟。
不让查看参考任何资料。
第一题,由于
  1. <div>Class.forName("com.mysql.jdbc.Driver");</div><div>String url = "jdbc:mysql://localhost:3306/test";</div>
复制代码
这中间的两个字符串记不得,直接到底身亡。
第二题,很简单,由于第一题的冲击波太大,影响了第二题的发挥,随机数竟然使用java.util.Random,直接面试失败。
接下来给出这两个面试题的答案:
1.
  1. <div>package Test;</div><div>
  2. </div><div>import java.sql.Connection;</div><div>import java.sql.DriverManager;</div><div>import java.sql.PreparedStatement;</div><div>import java.sql.ResultSet;</div><div>import java.sql.SQLException;</div><div>import java.util.ArrayList;</div><div>import java.util.Iterator;</div><div>import java.util.List;</div><div>
  3. </div><div>class Student {</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>private String name;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>private int age;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>private int score;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public String getName() {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>return name;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public void setName(String name) {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>this.name = name;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public int getAge() {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>return age;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public void setAge(int age) {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>this.age = age;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public int getScore() {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>return score;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public void setScore(int score) {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>this.score = score;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div>}</div><div>public class Test1 {</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public static Connection getConnection() throws ClassNotFoundException, SQLException {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>Class.forName("com.mysql.jdbc.Driver");</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>String url = "jdbc:mysql://localhost:3306/test";</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>String user = "root";</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>String password = "123456";</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>return DriverManager.getConnection(url, user, password);</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public static List<Student> getStudents() throws </div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>ClassNotFoundException, SQLException {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>List<Student> list = new ArrayList<Student>();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>String sql = "select * from tb_stu";</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>Connection conn = getConnection();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>PreparedStatement ps = conn.prepareStatement(sql);</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>ResultSet rs = ps.executeQuery();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>while(rs.next()) {</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>Student s = new Student();</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>s.setName(rs.getString("name"));</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>s.setAge(rs.getInt("age"));</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>s.setScore(rs.getInt("score"));</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>list.add(s);</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>return list;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public static void main(String[] args) throws ClassNotFoundException, SQLException {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>List<Student> list = getStudents();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>//1.</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>for(Student s : list) {</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>System.out.println(s.getName()+","+s.getAge()+","+s.getScore());</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>//2.</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>Iterator i = list.iterator();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>while(i.hasNext()) {</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>Student s = (Student)i.next();</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>System.out.println(s.getName()+","+s.getAge()+","+s.getScore());</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div>}</div>
复制代码

2.
  1. <div>package Test;</div><div>
  2. </div><div>import java.util.Random;</div><div>import java.util.Scanner;</div><div>
  3. </div><div>public class Test2 {</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>public static void main(String[] args) {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>System.out.println("请输入一个字符串");</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>Scanner scan = new Scanner(System.in);</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>String str1 = scan.nextLine();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>System.out.println("请输入想要查找的字符");</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>String str2 = scan.nextLine();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>for(int i=0; i < 4; i++) {</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>if(str1.contains(str2)) {</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>System.out.println(str2+"出现的位置是:"+str1.indexOf(str2)+" 次数:"+ times(str1,str2));</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>System.exit(0);</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>else {</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>System.out.println("请重新输入");</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>str2 = scan.nextLine();</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>char c = str1.charAt((int)(Math.random()*str1.length()));</div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>System.out.println("由于5次输入均错误,所以随机选择了一个字符" + c);</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>System.out.println(c+"出现的位置是:"+str1.indexOf(c)+" 次数:"+ times(str1,c+""));</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">        </span></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>/**</div><div><span class="Apple-tab-span" style="white-space:pre">        </span> * 一个字符ch在字符串str中出现的次数</div><div><span class="Apple-tab-span" style="white-space:pre">        </span> * @param str</div><div><span class="Apple-tab-span" style="white-space:pre">        </span> * @param ch</div><div><span class="Apple-tab-span" style="white-space:pre">        </span> * @return</div><div><span class="Apple-tab-span" style="white-space:pre">        </span> */</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>private static int times(String str1, String str2) {</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>int sum = 0;</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>char[] cha = str1.toCharArray();</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>for(int i=0; i<str1.length(); i++) {</div><div><span class="Apple-tab-span" style="white-space:pre">                        </span>if(cha[i] == str2.toCharArray()[0])</div><div><span class="Apple-tab-span" style="white-space:pre">                                </span>sum++;</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">                </span></div><div><span class="Apple-tab-span" style="white-space:pre">                </span>return sum;</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div>}</div>
复制代码
给我面试的是盖洪晓老师,老师说了,后面还有理论知识题20分。
每人有3次面试机会,12两次相等,第3次需要重新走流程。
面试内容涵盖:面向对象 集合 线程 IO 反射 jdbc  mysql http(没有网络编程和GUI)
这次失败主要由于没有做好准备,下次我会准备好的,黑马,等我!

31 个回复

倒序浏览
66666666666,赞一个
回复 使用道具 举报
1024个赞
回复 使用道具 举报
赞。。。。。。。。。。。
回复 使用道具 举报
点赞 楼主加油
回复 使用道具 举报
由于代码显示有问题,重新弄一下!
  1. import java.sql.Connection;
  2. import java.sql.DriverManager;
  3. import java.sql.PreparedStatement;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;
  6. import java.util.ArrayList;
  7. import java.util.Iterator;
  8. import java.util.List;

  9. class Student {
  10.         private String name;
  11.         private int age;
  12.         private int score;
  13.        
  14.         public String getName() {
  15.                 return name;
  16.         }
  17.         public void setName(String name) {
  18.                 this.name = name;
  19.         }
  20.         public int getAge() {
  21.                 return age;
  22.         }
  23.         public void setAge(int age) {
  24.                 this.age = age;
  25.         }
  26.         public int getScore() {
  27.                 return score;
  28.         }
  29.         public void setScore(int score) {
  30.                 this.score = score;
  31.         }
  32. }
  33. class DbUtil {
  34.         public static Connection getConnection() throws ClassNotFoundException, SQLException {
  35.                 Class.forName("com.mysql.jdbc.Driver");
  36.                 String url = "jdbc:mysql://localhost:3306/test";
  37.                 String user = "root";
  38.                 String password = "123456";
  39.                 return DriverManager.getConnection(url, user, password);
  40.         }
  41. }
  42. public class Test1 {
  43.         public static List<Student> getStudents() throws
  44.                                 ClassNotFoundException, SQLException {
  45.                 List<Student> list = new ArrayList<Student>();
  46.                 String sql = "select * from tb_stu";
  47.                 Connection conn = DbUtil.getConnection();
  48.                 PreparedStatement ps = conn.prepareStatement(sql);
  49.                 ResultSet rs = ps.executeQuery();
  50.                 while(rs.next()) {
  51.                         Student s = new Student();
  52.                         s.setName(rs.getString("name"));
  53.                         s.setAge(rs.getInt("age"));
  54.                         s.setScore(rs.getInt("score"));
  55.                         list.add(s);
  56.                 }
  57.                
  58.                 return list;
  59.         }
  60.         public static void main(String[] args) throws ClassNotFoundException, SQLException {
  61.                 List<Student> list = getStudents();
  62.                 //1.
  63.                 for(Student s : list) {
  64.                         System.out.println(s.getName()+","+s.getAge()+","+s.getScore());
  65.                 }
  66.                 //2.
  67.                 Iterator i = list.iterator();
  68.                 while(i.hasNext()) {
  69.                         Student s = (Student)i.next();
  70.                         System.out.println(s.getName()+","+s.getAge()+","+s.getScore());
  71.                 }
  72.         }
  73. }
复制代码
回复 使用道具 举报
第二题代码:
  1. import java.util.Scanner;

  2. public class Test2 {
  3.         public static void main(String[] args) {
  4.                 System.out.println("请输入一个字符串");
  5.                 Scanner scan = new Scanner(System.in);
  6.                 String str1 = scan.nextLine();
  7.                 System.out.println("请输入想要查找的字符");
  8.                 String str2 = scan.nextLine();
  9.                
  10.                 for(int i=0; i < 4; i++) {
  11.                         if(str1.contains(str2)) {
  12.                                 System.out.println(str2+"出现的位置是:"+str1.indexOf(str2)+" 次数:"+ times(str1,str2));
  13.                                 System.exit(0);
  14.                         }
  15.                         else {
  16.                                 System.out.println("请重新输入");
  17.                                 str2 = scan.nextLine();
  18.                         }
  19.                 }
  20.                
  21.                
  22.                 char c = str1.charAt((int)(Math.random()*str1.length()));
  23.                
  24.                 System.out.println("由于5次输入均错误,所以随机选择了一个字符" + c);
  25.                 System.out.println(c+"出现的位置是:"+str1.indexOf(c)+" 次数:"+ times(str1,c+""));
  26.         }
  27.        
  28.         /**
  29.          * 一个字符ch在字符串str中出现的次数
  30.          * @param str
  31.          * @param ch
  32.          * @return
  33.          */
  34.         private static int times(String str1, String str2) {
  35.                 int sum = 0;
  36.                 char[] cha = str1.toCharArray();
  37.                 for(int i=0; i<str1.length(); i++) {
  38.                         if(cha[i] == str2.toCharArray()[0])
  39.                                 sum++;
  40.                 }
  41.                
  42.                 return sum;
  43.         }
  44. }
复制代码
回复 使用道具 举报
bitwdh 高级黑马 2016-6-25 17:58:28
8#
面试怎么感觉好难得样子?
回复 使用道具 举报
面试的编程题现场可以用eclipse写吗?还是用笔记本写~~(听别人说有手写~)
回复 使用道具 举报
最近也在复习中。共勉。黑马等我!!!!!
回复 使用道具 举报
多谢楼主分享心得,祝成功
回复 使用道具 举报
谢谢分享,感觉好难啊!
回复 使用道具 举报
够详细啊,赞一个
回复 使用道具 举报
论坛有你更精彩{:3_51:}
回复 使用道具 举报
第二题不能使用Random?  这道题不让用Random吗?
回复 使用道具 举报
610980097 发表于 2016-7-2 22:58
第二题不能使用Random?  这道题不让用Random吗?

用的Math.random和Random有点不一样
回复 使用道具 举报
还有JDBC的啊,先留个名
回复 使用道具 举报
赞楼主,下次加油,感谢分享
回复 使用道具 举报
完全看不懂啊
回复 使用道具 举报
我给你32个赞
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马