1. 程式人生 > >30道Java精選筆試題解答

30道Java精選筆試題解答

package test; /** * @description Java中沒有引用傳遞只有值傳遞 * * @author Alexia * @date 2013-10-16 * */ class Person { private String name; private String sex; public Person(String x, String y) { this.name = x; this.sex = y; } // 重寫toString()方法,方便輸出 public String toString() {
return name + " " + sex; } // 交換物件引用 public static void swapObject(Person p1, Person p2) { Person tmp = p1; p1 = p2; p2 = tmp; } // 交換基本型別 public static void swapInt(int a, int b) { int tmp = a; a = b; b = tmp; } // 交換物件陣列 public
static void swapObjectArray(Person[] p1, Person[] p2) { Person[] tmp = p1; p1 = p2; p2 = tmp; } // 交換基本型別陣列 public static void swapIntArray(int[] x, int[] y) { int[] tmp = x; x = y; y = tmp; } // 改變物件陣列中的內容 public static void changeObjectArray(Person[] p1, Person[] p2) { Person tmp
= p1[1]; p1[1] = p2[1]; p2[1] = tmp; // 再將p1[1]修改 Person p = new Person("wjl", "male"); p1[1] = p; } // 改變基本型別陣列中的內容 public static void changeIntArray(int[] x, int[] y) { int tmp = x[1]; x[1] = y[1]; y[1] = tmp; x[1] = 5; } } public class ByValueTest { public static void main(String[] args) { // 建立並構造兩個物件 Person p1 = new Person("Alexia", "female"); Person p2 = new Person("Edward", "male"); System.out.println("物件交換前:p1 = " + p1.toString()); System.out.println("物件交換前:p2 = " + p2.toString()); // 交換p1物件和p2物件 Person.swapObject(p1, p2); // 從交換結果中看出,實際物件並未交換 System.out.println("\n物件交換後:p1 = " + p1.toString()); System.out.println("物件交換後:p2 = " + p2.toString()); // 建立兩個物件陣列 Person[] arraya = new Person[2]; Person[] arrayb = new Person[2]; // 分別構造陣列物件 arraya[0] = new Person("Alexia", "female"); arraya[1] = new Person("Edward", "male"); arrayb[0] = new Person("jmwang", "female"); arrayb[1] = new Person("hwu", "male"); System.out.println('\n' + "物件陣列交換前:arraya[0] = " + arraya[0].toString() + ", arraya[1] = " + arraya[1].toString()); System.out.println("物件陣列交換前:arrayb[0] = " + arrayb[0].toString() + ", arrayb[1] = " + arrayb[1].toString()); // 交換這兩個物件陣列 Person.swapObjectArray(arraya, arrayb); System.out.println('\n' + "物件陣列交換後:arraya[0] = " + arraya[0].toString() + ", arraya[1] = " + arraya[1].toString()); System.out.println("物件陣列交換後:arrayb[0] = " + arrayb[0].toString() + ", arrayb[1] = " + arrayb[1].toString()); // 建立兩個普通陣列 int[] a = new int[2]; int[] b = new int[2]; // 給陣列個元素賦值 for (int i = 0; i < a.length; i++) { a[i] = i; b[i] = i + 1; } System.out.println('\n' + "基本型別陣列交換前:a[0] = " + a[0] + ", a[1] = " + a[1]); System.out.println("基本型別陣列交換前:b[0] = " + b[0] + ", b[1] = " + b[1]); // 交換兩個基本型別陣列 Person.swapIntArray(a, b); System.out.println('\n' + "基本型別陣列交換後:a[0] = " + a[0] + ", a[1] = " + a[1]); System.out.println("基本型別陣列交換後:b[0] = " + b[0] + ", b[1] = " + b[1]); // 改變物件陣列的內容 Person.changeObjectArray(arraya, arrayb); System.out.println('\n' + "物件陣列內容交換並改變後:arraya[1] = " + arraya[1].toString()); System.out.println("物件陣列內容交換並改變後:arrayb[1] = " + arrayb[1].toString()); // 改變基本型別陣列的內容 Person.changeIntArray(a, b); System.out.println('\n' + "基本型別陣列內容交換並改變後:a[1] = " + a[1]); System.out.println("基本型別陣列內容交換並改變後:b[1] = " + b[1]); } }

相關推薦

30Java精選試題解答

package test; /** * @description Java中沒有引用傳遞只有值傳遞 * * @author Alexia * @date 2013-10-16 * */ class Person { private String name; private

Java精選試題

1,volatile關鍵字是否能保證執行緒安全?() >>>> 答案:否 volatile關鍵字用在多執行緒同步中,可保證讀取的可見性,JVM只是保證從主記憶體載入到執行緒工作記憶體的值是最新的讀取值,而非cache中。但多個執行緒對volatile的寫操作,無

170Java工程師面試題-解答

int是java基本資料型別,Integer 是int的包裝類,new Integer 可得到int型別的物件 int i=100;Integer j=new Integer(100); 相等,比較前會將Integer 拆包,實際比較的是常量 Integer i=new Integer(100);Int

精選30Java試題解答

轉載至:http://blog.csdn.net/lanxuezaipiao/article/details/16753743 都是一些非常非常基礎的題,是我最近參加各大IT公司筆試後靠記憶記下來的,經過整理獻給與我一樣參加各大IT校園招聘的同學們,純考Java基礎

精選30java試題

都是一些非常非常基礎的題,是我最近參加各大IT公司筆試後靠記憶記下來的,經過整理獻給與我一樣參加各大IT校園招聘的同學們,純考Java基礎功底,老手們就不用進來了,免得笑話我們這些未出校門的孩紙們,但是IT公司就喜歡考這些基礎的東西,所以為了能進大公司就~~~當複習期末考

精選11Java技術面試題並有答案(包含部分阿裏和華為的面試題

mit 高度 nth erro 多線程 edi GC expire 棧溢出 JVM的類加載機制是什麽?有哪些實現方式? 類加載機制: 類的加載指的是將類的.class文件中的二進制數據讀入到內存中,將其放在運行時數據區的方法去內,然後在堆區創建一個java.lang.Cl

入職大廠,齊姐精選的 9 Java 集合面試題

Java 集合框架其實都講過了,有一篇講 Collection 的,有一篇講 HashMap 的,那沒有看過的小夥伴快去補下啦,文末也都有連結;看過的小夥伴,那本文就是檢測學習成果的時候啦 今天這篇文章是單純的從面試的角度出發,以回答面試題為線索,再把整個 Java 集合框架複習一遍,希望能幫助大家拿下面試

java常見面試題——java常見試題

外部類 成員變量 exceptio rect creat 依次 chan 發的 簡單工廠模式 註:轉載自http://www.cnblogs.com/yhason/archive/2012/05/08/2489932.html,版權歸其所有! 5、String是最基本的數

java基礎試題

hset 類名 unit num lan 安全性 fin 難度 sys java基礎加強 考查的知識點:junit測試 1.下面註解中,哪項是定義一個Junit單元測試的方法() (難度A) A、@Test B、@Ignor C、@Before D、@After 考查的

100Java基礎面試題

nvi ++i 成員 取出 並發 字符串長度 反轉 static container 1.什麽是B/S架構?什麽是C/S架構 B/S(Browser/Server),瀏覽器/服務器程序 C/S(Client/Server),客戶端/服務端,桌面應用程序 2.你

110Python面試試題超強彙總

1、一行程式碼實現1--100之和 利用sum()函式求和 print(sum(range(1,101))) 2、如何在一個函式內部修改全域性變數 利用global 修改全域性變數 a=5 def fun(): global a a=3 fun() print(

java面試-試題總結

一、java和框架 -4.菱形的列印 /** * Created by david on 2018/8/28 * 列印菱形 */ public class Test1 { public static void main(String[] args) { int

Java基礎面試題你真的會嗎?

你咱不往下看,先想想你的答案是什麼? 這裡先來聊聊String的intern()方法是幹什麼的? intern方法是一個native方法,空口無憑,咱們還是可以看看Stirng的原始碼 從方法的註釋咱們可以知道,它的作用: 1:如果字串常量池中已經包含一個等於此Sti

27Redis精選試題,你會做幾題?

最近面試了幾家公司,都問到了Redis相關問題,當時準備面試時忽略了這方面內容,面試結果就可想而知了。面試回來後,收集了身邊朋友面試時遇到的關於redis的問題,進行了總結,記錄一下以便之後面試有所參考。 1、什麼是Redis?簡述它的優缺點? Redis的全稱是:Remote Dict

java面試試題彙總(陸續補充)

最近自己也在準備面試的一方面東西,遇到一些不太熟悉的地方我會陸續補充上來。 1.選擇排序和氣泡排序 /** * 選擇排序 * @param arr * @return */ public static int[] ChooseSor

30Web前端面試題,你能答出多少

如今很多人受到Web前端高薪的誘惑紛紛來學Web前端,他們希望自己通過學習Web前端能找到一份高薪的Web前端開發工作,但是真的有那麼容易嗎?你真的有與高薪相對應的能力嗎?你想知道自己的技術水平與高薪匹不匹配嗎?下面小編分享了一些Web前端的面試題,限時一小時,你看看自己能夠答出多少道!

一次java實習試題

建立物件的方式有幾種?是什麼? 答案 商品價格用什麼型別表示 Java語言提供了另外一種資料型別BigDecimal,可以表示精確的浮點數,適合用作財務計算的資料型別。但是需要注意的是,在使用BigDecimal的時候,BigDecimal有多個過載的構造方法能表示精度的值,只有用引數為String型別

Java基礎試題 Java程式設計師試題

轉 Java程式設計師筆試題 2018年03月28日 00:00:04 皮蛋蛋168 閱讀數:5982

30python真實面試題(蒐集到的,看看其實都是基礎)

1、一行程式碼實現1-100之間和 In [1]: sum(range(0,101)) Out[1]: 5050 2、如何在一個函式內部修改全域性變數 利用global修改全域性變數 In [2]: a = 10 In [3]: def fn(): ...: global a

30python真實面試題(附答案)

  最近收集整理了100道python真實面試筆試題,並自己做了一些,希望能幫助大家,順利早日找到工作,限於篇幅問題,本文附有30道面試題計算答案。                學習Python中有