日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java get方法报空指针_面试的哪些事儿之JAVA程序员面试笔试题(一)

發布時間:2025/4/5 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java get方法报空指针_面试的哪些事儿之JAVA程序员面试笔试题(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

在一個技術微信群看一個網友最近在一家公司做筆試的題目,然后我就整理了一下,供大家參考一下,希望能夠幫助到大家。

筆試內容

1.假設有一個mysql實例,相關信息如下:

schema名為test用戶名密碼為6個b端口為:3306主機IP為:127.0.0.1該schema里有個一表叫person,請用jdbc從連接數據庫開始到使用SQL取得person表中所有記錄與過程。

Connection connection = null; Statement statement = null; ResultSet resultset = null; //由于在finally代碼塊中需要關閉資源,所以在此處定義變量而不是在try代碼塊中(目的是將變量的作用范圍提升,提高代碼復用性) try { Class.forName("com.mysql.jdbc.Driver");//1、加載驅動 connection = DriverManager.getConnection("jdbc:mysql://192.168.0.1:7706/sky", "aaaaaa", "aaaaaa");//2、與數據庫建立連接 statement = connection.createStatement();//3、創建SQL語句對象 String sql = "select * from person";//4、編寫SQL語句 resultSet = statement.executeQuery(sql);//5、執行SQL語句 while(resultSet.next()) { String id = resultSet.getString("id"); String name= resultSet.getString("name"); System.out.println(id + "," + name);//6、輸出while循環遍歷結果 //while循環工作原理:resultset.next()一開始指向結果集中第一行元素,之后每執行一次就往后跳動一次,為空時結束循環。 } } catch (Exception e) { e.printStackTrace();//7、釋放資源(倒序) } finally { try { if (resultSet != null) {//判斷對象是否為空,因為如果在賦值之前該對象為空,不加if判斷的話,此時會報空指針異常的錯誤。(下同) resultSet.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (statement != null) { statement.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (connection != null) { connection.close(); } } catch (SQLException e) { e.printStackTrace(); } }

2.使用工廠模式實現傳入不同的值返回結果:
傳入參數為0,返回hello
傳入參數為1,返回word
傳入參數為2,返回java

//抽象接口類public interface StrInterface { public String get();}//hello類public class Hello implements StrInterface{ //實現并重寫父類的get()方法 public String get() { return "hello"; }}//word類public class Word implements StrInterface{ //實現并重寫父類的get()方法 public String get() { return "word"; }}//java類public class Java implements StrInterface{ //實現并重寫父類的get()方法 public String get() { return "java"; }}//工廠類public class Factory { public static StrInterface getStr(int param) { StrInterface str = null; if (0 == param) {????????????str = new Hello(); } else if (1 == param) {????????????str?=?new?Word(); } else if (2 == param) {????????????str?=?new?Java(); }????????return?str; }}//main方法public?static?void?main(String[]?args)?{????StrInterface?hello?=?Factory.getStr(0);????System.out.println(hello.get());????StrInterface word = Factory.getStr(1);????System.out.println(word.get()); StrInterface java = Factory.getStr(2);????System.out.println(java.get());}

3.select count(*) 與 select count(1) 的區別。

如果你的數據表沒有主鍵,那么count(1)比count()快

如果有主鍵的話,那主鍵(聯合主鍵)作為count的條件也比count()要快

如果你的表只有一個字段的話那count()就是最快的啦

count() count(1) 兩者比較。主要還是要count(1)所相對應的數據字段。

如果count(1)是聚索引,id,那肯定是count(1)快。但是差的很小的。

因為count(),自動會優化指定到那一個字段。所以沒必要去count(?),用count(),sql會幫你完成優化的。

4.java類Person有name,age字段,假設一個集合List請根據 age 從大到小對這個list進行排序。

list.stream().sorted(Comparator.comparing(Person::getAge).reversed())

5.對List進行排序,集合中有數字1,1,3,3,4,5,6,2,8,1,5。

Listlist = Lists.newArrayList(1,1,3,3,4,5,6,2,8,1,5);Set set = new HashSet(list);List changeList = new ArrayList(set);

6.假設有個HashMap,使用兩種方式遍歷Map對象中的數據。

Map<String, Student> map = new HashMap<String, Student>();Iterator iterator = map.entrySet().iterator();while(iterator.hasNext()) { Map.Entry set = (Map.Entry) iterator.next(); System.out.println(set.getKey()+","+set.getValue());}for (Map.Entry set:map.entrySet()) { System.out.println(set.getKey()+","+set.getValue());}

7.JDBC中Statement與PrepareStatement的區別。prepareStatement會先初始化SQL,先把這個SQL提交到數據庫中進行預處理,多次使用可提高效率。createStatement不會初始化,沒有預處理,每次都是從0開始執行SQL

8.使用純javascript判斷用戶在input type=“text” name=“password” 輸入內容為數英混合(0-9+a-z+A-Z)

var input = document.getElementsByName("password");var reg=/^[A-Za-z0-9]+$/; /*定義驗證表達式*/if(!reg.test(input)){ alert("請輸入英數組合字符"); return false;}

9.在linux上查看名為“mongodb” 的進程。

ps -ef |grep mongdb

總結

以上是生活随笔為你收集整理的java get方法报空指针_面试的哪些事儿之JAVA程序员面试笔试题(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。