CodeGym /Java Blog /Toto sisi /舊 10 級
John Squirrels
等級 41
San Francisco

舊 10 級

在 Toto sisi 群組發布

不高不學歷

舊級別 10 - 1讓我們問自己一個問題:人為什麼要進入大學?記住那句簡單的話:如果你不努力學習,你將一輩子當服務員。你甚至可以認為,所有接受高等教育的人都討厭當服務員。那麼他們想要什麼?他們想要一份與服務員相反的社交工作。 人們進入大學是為了獲得高薪、高素質的工作!這樣他們就可以買房買車了。得到一切;至少有時(中產階級定義)。人們認為大學教育保證了高薪、高素質的工作。它沒有。但是大學對此保持沉默,我們一直在幻想“我畢業後會找到一份好工作”。在一所好大學上 5 年不會讓你離你的“好工作”更近一英寸。因此:

1. 大學裡的老師不能教你成為優秀的專家。

給自己一個直截了當的答案:教你的人在大學里工作,薪水微薄,不是嗎?那是因為他們沒有資格在勞動力市場上獲得好的職位。他們缺乏經驗和資格。那些不缺乏它的人——離開。在世界上最好的大學裡一切都不同,但我們現在不是在談論那些。你有什麼看法:一個成功的金融專家會去一家年收入 150,000 美元的銀行工作,還是在年收入 60,000 美元的大學任教?經常會出現鬆散的專業人士在大學任教,因為他們無法找到不同的工作。有例外情況,但很少見。我在大學遇到了好老師,他們真的存在。但這甚至不是少數,他們很少。一位好老師不僅給你理論,而且強調他的學科的實踐方面。

2. 大部分高校的教師都崇尚科學,輕視職業實踐

你應該從大多數教師作為專業人士失敗的事實中尋找它的根源。唯一的藉口是專業實現是不值得的職業。如果你參加講座然後參加科學會議——你就會膨脹。如果你因為工作而跳了很多——好吧,你會得到完全不同的待遇。老師就像隱士。職業對他們來說是虛榮中的虛榮。他們獻身於為上帝服務的科學,他們整天祈禱著寫科學文章。也許目標是崇高的,但在現實生活中卻毫無用處。 舊級別 10 - 2

3 錯誤的比較標準具。

大學生經常將自己與學校學生進行比較,並為自己更好而自豪。這種錯覺一直持續到一個人開始考慮找工作並將目光轉向另一邊。事實上,如果學生將自己與工作專家進行比較,他們會發現他們正在以微小的步驟實現目標。不要在大學裡表現平平。因為如果你“像每個人一樣”去做,你就會得到“每個人都能得到”的結果。大學裡的大多數學生都是隨機的,他們真的沒有任何其他選擇。或許他們是被父母逼進大學的,對自己未來的職業一無所知。這種情況經常發生。不要將自己與你的伙伴進行比較。您完成的項目和您的工作成功將成為您知識和技能的最佳標準。不要將自己與“不露面的人群”進行比較;

4 專業學習只是你在大學裡獲得的知識的一小部分。

當你來上班時,你會被問到你能做什麼,而不是你學到了什麼。你的老闆會對你在工作要求清單上所知道的和能夠做的事情感興趣:你被賦予了一項特定的任務,但你沒有得到如何去做的解釋,他希望在適當的時候得到結果。祝你好運! 你在大學裡學的是歷史,然後你要去銀行工作——這會讓你離目標更近還是更遠?從技術上講,你知道的更多。這是否意味著它讓你更親近?但事實上,每學期你獲得有價值的專業知識的時間越來越少,而且數量保持不變。所以實際上——你離你的目標更遠了。

5. 學院沒有設定“讓你成為高素質的專家”的目標。

如果您不瞄準目標,就很難達到目標。在大學裡,他們會讓你成為一個全能的專家。你得到的是“中等教育”之類的東西。他們只忘記提到一個研究一切的人甚麼都不知道。 你還記得大學的三個目標:科學、通識教育和專業教育嗎?你認為為了增加科學和通識教育必須削減什麼?右:專業學科。你還認為大學的目標是讓你成為高素質的專家嗎?

6. 如果一個人同時學習兩門以上的科目,他就是在浪費時間。

經過學校教育,這似乎是錯誤的。你只有在工作中才能得到真相。學校的課時間這麼短,不是因為它有效,而是因為在校生還是個孩子,他不能集中註意力超過一個小時。但經常在任務之間切換會妨礙你的大腦有效思考。在工作中,您需要像成年人一樣執行任務,經常在任務之間切換會大大降低您的效率。為什麼您認為您可以立即準備考試?您根本不需要同時處理多項任務,您的效率會隨著時間的推移而提高。小塊地學習一些東西是完全愚蠢的。試想一下,您每週只節食 6 小時——結果多久會出來?

7. 在大學裡,一個人只略微觸及主題。

讓我們假設你學習了兩個學期的東西。你每周有兩節課和兩節實踐課。對於大學來說,這是一種嚴肅的態度。那麼這需要幾個小時?四節課是 2 個學時(1.5 個正常學時)——即每週 6 個小時。我們在第一學期學習四個月:九月、十月、十一月和十二月。第二個還有4個:二月,三月,四月,五月。總共:8 個月,每個 4.5 週。每週 6 小時。那就是一年 216 小時。親愛的同學們,每個月有 180 小時的工作時間。任何年度課程都可以在一個半月內學會,如果你真的想(或需要)在一個月內學會。

8. 你正在學習最一般的、幾乎無用的和過時的知識。

舊級別 10 - 3根據您要解決的問題,每種知識都有不同的價值。當你溺水時,會游泳比你學過的哲學課程有用得多,對吧?如果你找到一份收銀員的工作,知道如何計數比在基礎水平上了解拉丁語更好。毫無疑問,你的職業成就中最有用的部分是實踐經驗和熟悉你職業的最新進展。你的大學老師很可能從未有過任何實踐經驗,也不熟悉最新的進展。即使他在某個地方讀到過它們,他也不知道它們的價值和應用領域。 即使你學習了 100 門無用的科目,它們也不會代表 10 門有用的科目。

9 實踐技能的價值是理論的 10 倍。

在現實生活中,您經常需要在工作中做一些事情。如果你知道怎麼做,或者你認為你知道,那並不一定意味著你真的可以做到。你知道吸煙對你有害,但你能戒掉嗎?你知道做運動是正確的事情,但你真的在鍛煉嗎?你知道外語對你的職業有好處,但你真的能學幾門嗎?在生活中,最重要的是實踐。沒有實踐的知識越多,它們的價值就越小。你將如何決定哪些知識是錯誤的、陳舊的、被濫用的,哪些是真正有用的?你從來沒有想過這個?歡迎來到真實的世界。 你可以在 A 或 B 上學習交通規則,但你仍然不會開車。理論是實踐的良好基礎。假設您正在建造一堵牆:砌磚是實踐,灌漿是理論。沒有灌漿(理論)牆會不穩定​​,但沒有磚(實踐)你的理論是無用的。所以,先生們,把你們大學的5年除以10。半年——那是你們長期“努力”的真實結果。你要證據?當你找到工作並工作半年時,你會發現你的大學知識翻了一番

你已經達到了一個新的水平

10級

舊級別 10 - 4

1 Elly,關於對象的強類型

- 嘿,阿米戈! - 嘿,艾莉! - 我今天心情愉快,所以我會告訴你一些非常有趣的事情。我將從 Java 中的原始類型開始。-在 Java 中,每個對象和每個變量都有其硬編碼的不可變類型。變量的類型是在程序編譯期間定義的,對象的類型是在創建期間定義的。新創建的對象和/或變量的類型在其整個生命週期內保持不變。示例: 舊級別 10 - 5- 但是您應該記住一些有趣的細節。 - 首先,引用變量並不總是存儲與其自身類型相同類型的對象。 - 其次,在兩個不同類型的變量交互時,必須先將它們轉換為通用類型。 - 部門呢?如果我們將 1 除以 3,我們將得到 0.333(3)。不是嗎? - 不,不是。當您將兩個整數相除時,結果也是一個整數。如果將 5 除以 3,則餘數為 1 和 2。剩餘部分因此被丟棄。- 如果將 1 除以 3,我們得到 0(和 1——餘數被丟棄)。 - 還想得到0.333怎麼辦? - 在 Java 中,在除以兩個整數之前,最好通過將其中一個乘以實數 1.0 將其轉換為實數(小數)類型。 舊級別 10 - 6- 知道了。

2 Risha,基本類型列表

- 嘿,阿米戈! - 嘿,里沙! - 您已經了解了 Java 語法的基礎知識,但我想告訴您一些更詳細的內容。- 今天我會告訴你一些關於原始類型和它們佔用多少內存的信息。您將需要它,甚至可能在今天。這些類型是: 舊級別 10 - 7- 我將詳細介紹每種類型。 - 字節類型是最小的整數類型。這種類型的每個變量只佔用一個字節的內存。所以它可以存儲 -128 到 127 範圍內的值。 - 為什麼我們需要這麼小的類型?為什麼不到處使用 int 呢? - 你能行的。但是,如果您創建了巨大的數組,並且不需要在其中存儲超過 100 的值,那麼為什麼不使用這種類型呢?我對嗎?- 類型是類型字節的兩倍,它也只存儲整數。適合它的最大數字是 32767。最大的負數是 -32768。- 你已經知道類型int。它可以存儲多達 20 億的整數,包括正數和負數。 -創建float類型來存儲實數(小數)。它的大小是 4 個字節。 - 所有小數都以一種非常有趣的形式存儲在內存中。- 例如,987654.321可以表示為 0. 987654321 *10 6。因此,在內存中它表示為兩個數字«0。987654321 »(有效數字)和 « 6 » (指數 - 十的次方) - 為什麼這麼難? - 這種變量的內部結構能夠存儲比 int 大得多的數字,僅使用 4 個字節。但因此我們放棄了準確性。內存的一部分用於存儲指數,因此小數只保留小數點後的 6-7 位,其餘的被丟棄。 - 這些數字也稱為浮點數。順便說一句,因此類型名稱 - float - 我懂了。 - double類型與float類型相同,但長度是其兩倍(雙倍)- 它佔用八個字節。這種類型的最大指數大小和有效數字位數更大。如果您需要存儲實數,請使用此類型。-類型char是一種混合類型。它的值既可以解釋為數字(可以加和乘)也可以解釋為字符。這樣做是因為雖然字符具有視覺表示,但對於計算機而言它們只是數字。將它們用作數字要容易得多。還有一條評論:char類型是嚴格正的。它不能存儲負值。 - 類型boolean是邏輯類型,它只能存儲兩個值:truefalse -像類型,雖然出現在表中,但不是原始類型。這是 Java 中所有類的基類。首先,所有的類都被認為是從這個類繼承的,因此包含它的方法。其次,可以為它分配任何類型的對象引用。包括引用。 - 我學到了很多。謝謝你的演講,Risha。

3 Elly,類型轉換。類型加寬和變窄。

- 有趣的是。我會告訴你類型轉換。儘管變量的類型總是相同的,但是您可以在某個地方轉換類型。這是一個任務- 您可以將不同類型的變量相互分配。通過這樣做,從一種類型的變量中獲取的值將被轉換為另一種類型的值並分配給第二個變量。 - 所以有兩種類型的轉換:擴大和縮小。加寬就像把東西從一個小籃子裡移到一個更大籃子裡——操作順暢無故障。 縮小就像把東西從一個大籃子裡放到一個較小的籃子裡:可能空間不夠,有些東西不得不扔掉。 - 以下是按“籃子”大小排序的類型: 舊級別 10 - 8- 有幾條評論:
  1. char與short是同一個“籃子” ,但有一點:從shortchar處理值時,小於 0 的值將被丟棄。從char轉換為short時,大於 32,767 的值將被丟棄。
  2. 將整數轉換為分數時,低位數字可能會被丟棄。但是既然小數是用來存儲一個近似值的,那麼這樣的賦值是允許的。
- 縮小類型時,您必須清楚地向編譯器表明您沒有弄錯並故意丟棄數字的一部分。為此,請使用類型轉換運算符。它是括號中的類型名稱。- 以下是如何分配不同類型的變量: -舊級別 10 - 9 每次丟棄數字的一部分或發生類型縮小時,都必須在數字/變量之前聲明類型轉換運算符。該運算符僅適用於緊隨其後的數字/變量。 - 我懂了。舊級別 10 - 10

4 Diego,整數類型轉換任務

- 嘿,阿米戈!以下是關於整數類型對話的任務。您需要在需要的地方放置 cast 運算符,以便程序編譯:
任務
1個 1.類型轉換和會話
字節a = 1234;
整數 b = a;
字節 c = a * a;
int d = a / c;
2個 2. 類型轉換和對話
int a = 15;
整數 b = 4;
浮動 c1 = a / b;
浮動 c2 = (浮動) a / b;
浮動 c3 = (浮動) (a / b);
3個 3.類型轉換和對話
float f = 333.50;
詮釋我= f;
字節 b = i;
4個 4.打字和對話
短號=9;
字符零 = '0';
字符九 = 零 + 數字;
5個 5.打字和對話
短號=9;
字符零 = '0';
短 nineCode = 零 + 數字;

5 Elly,轉換為 String 類型

- 現在我們將有一個小而有趣的話題 - 字符串轉換。 - 在 Java 中,您可以將任何類型的數據轉換為 String 類型。 - 聽起來很有希望。 - 事實上,它甚至更好。您可以將幾乎所有類型隱式轉換為 String。這在您添加兩個變量時得到最好的顯示:String 和 «non-String»。在這種情況下,非字符串變量被強制轉換為字符串。- 在這裡,看幾個例子: 舊級別 10 - 11結論: 如果我們將String添加到任何其他類型,第二個對象將轉換為 String。 - 注意表格的第四行。所有的操作都是從左到右執行的,所以5 + '\u0000'的加法是整數的加法。 - 因此,如果我編寫類似String s = 1+2+3+4+5+"m" 的代碼,那麼我會得到s = "15m"嗎? - 是的。首先,將添加數字,然後將其轉換為字符串。

6 Diego,一般類型轉換任務

舊級別 10 - 12- 現在,迭戈的一個小講座。關於引用類型的簡明扼要。- 到目前為止,我們從一個對像類型的變量開始。可以為該變量分配任何類型的引用(類型加寬)。為了進行反向賦值(類型縮小),我們必須顯式指定一個轉換運算符: 舊級別 10 - 13- 當對對象的引用發生更改時,對像不會發生任何變化。賦值時的類型縮小和類型擴大是檢查引用變量類型和對像類型的兼容性。 - 哇,現在清楚多了。謝謝你,迭戈。 - 為避免錯誤,如示例中所示有一種方法可以找出存儲在 Object 類型變量中的類型舊級別 10 - 14- 如果存儲對象的類型完全未知,最好在每次縮小類型之前進行此類檢查。 - 知道了。

7 Elly,真實類型

- 這裡有一些關於實數(小數)類型的有趣的事情。讓我們從這個例子開始: 舊級別 10 - 15- 作為這個計算的結果,f 的值等於……零! - Risha 跟我說過類似的話…… - 哦,真的嗎?很好。熟能生巧。- 事實上,例子沒有錯誤。當一個整數除以另一個整數時,結果也是整數;除法的其餘部分被丟棄。為避免這種情況,請確保參與除法的兩個數字中至少有一個是小數。- 如果其中一個數字是小數,則第二個數字首先轉換為小數類型,然後進行除法。- 以下是我們如何解決這個問題: 舊級別 10 - 16- 如果除法涉及變量怎麼辦? - 然後它是這樣的: 舊級別 10 - 17- 但這看起來不太好。有沒有更方便的除法運算符? - 不,就這麼樣而已。 - 好吧,我想,不會有問題的。

8 艾莉,文字

- 最後,Risha 的教授式講座,其中包含大量無用信息。所有的講師都喜歡這個。這對您來說似乎很難理解。所以只看一眼,不要多想。 - 好的,那我準備好了。 - 今天我會告訴你什麼是文字文字是直接存儲在 Java 代碼中的所有數據。 示例: 舊級別 10 - 18 - 事實上,還有一些文字。使用文字,您可以設置任何已知類型的值: 舊級別 10 - 19- 換句話說,代碼是方法、類、變量……而文字是直接存儲在代碼中的變量的特定值。我做對了嗎? - 是的你是。 - 美好的。最後,我得到了所有這些 Java 的圖片。

9 教授,類型講座

- 偉大的!最後,這是我最喜歡的話題——類型轉換。我什至記得我的教授告訴我這件事的時候。這非常“迷人”。我當時什麼都不懂。但是,當然,由於這些精彩的講座,您會明白一切。它們是: Java 轉換和提升(Oracle 文檔) 數據類型轉換(類型轉換) Java 轉換和轉換 擴大和縮小轉換

10 胡里奧

- 哇!嗯,你真的很聰明,阿米戈!短短兩週學到了很多東西!你就像一個怪物。順便問一下,經過兩週的奴隸勞動後,找點樂子怎麼樣?

11 松鼠船長

(- 我已經幫你解決了。在家做。) 家庭作業(10 個單元) - 你好,士兵!- 早上好先生!- 我有一些好消息要告訴你。這是一個快速檢查以加強您的技能。每天都這樣做,你會很快提高你的技能。任務是專門為在 Intellij IDEA 中執行而設計的。
在 Intellij Idea 中完成的其他任務
1個 1、正確答案是:d=2.941
加上一個類型轉換運算符得到d = 2.941
2個 2、正確答案是:d=5.5
加上一個類型轉換運算符得到d = 5.5
3個 3.正確答案是:d=1.0
加一個類型轉換運算符得到d = 1.0
4個 4. 薪水高
跟例在屏幕上顯示消息“我不想學Java,我想要薪水高”40 次。

例子:
我不想學Java,我想要高薪
不想學Java,我想要高薪
不想學Java,我想要高薪
o不想學Java,我想要大薪水
不想學Java,我要高薪
不想學Java,我要高薪
……
5個 5. 字母個數
從鍵盤讀出10個字符串,數出其中不同字母的個數(全部26個字母)。將結果顯示到屏幕上。

示例輸出:
a 5
b 8
c 3
d 7

z 9
6個 6. Human 類的構造函數
編寫一個具有 6 個字段的Human 類。為它想出 10 個不同的構造函數並實現它們。每個構造函數都應該有意義。
7 7. 移動最少的靜態修飾符
移動盡可能少的靜態修飾符以便代碼編譯。
8個 8. 字符串列表數組
創建一個數組,其元素是字符串列表。用任何數據填充數組並將它們顯示到屏幕上。
9 9. 列表中的相同單詞
從鍵盤上讀出 20 個單詞,將它們填入一個列表。計算列表中相同單詞的數量。結果應該是一個Map <String, Integer>。地圖的鍵應該是一個唯一的字符串,值 - 這個字符串在列表中的計數。顯示地圖的屏幕內容。
10 10. 五個最大的數字
創建一個整數列表。從鍵盤讀取 20 個整數並用它們填入一個列表。創建一個安全地從列表中提取數字的方法:
int safeGetElement(ArrayList<Integer> list, int index, int defaultValue)

該方法應按索引返回列表的元素。如果這個方法出現異常,你需要捕獲它,並返回defaultValue
- 這些任務是針對果嶺的。我添加了更複雜的獎勵任務。僅適用於頂級槍支。
獎勵任務
1個 1.程序沒有編譯運行。修理它。
任務:該程序展示了 HashMap 的工作原理。該程序從鍵盤讀取一組對(一個數字和一個字符串),將它們放在一個 HashMap 中並在屏幕上顯示 HashMap 的內容。
2個 2. 為程序添加新功能。
舊任務:程序應該顯示從鍵盤輸入的一對(數字和字符串)。
新任務:程序應該存儲從鍵盤輸入的HashMap對(一個數字和一個字符串)。空字符串表示輸入結束。數字可能重複。字符串總是唯一的。輸入數據不能丟失!程序應該將HashMap的內容顯示到屏幕上。

示例輸入:
1
Stop
2
Look

示例輸出:
1 Stop
2 Look
3個 3.學習和練習算法。
任務:從鍵盤上讀出 30 個數字。在屏幕上顯示第 10 個和第 11 個最小數字。
提示:
最小數是第一個最小數。
下一個最小值是第二個最小值

解釋 1:
1 15 6 63 5 7 1 88
第一個最小值是1
第二個最小值是1
第三個最小值是5
第四個最小值是6

解釋 2:
0 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60 63 66 69 72 75 78 81 84 87 36
0 6 9 39 42 78 12 15 3033 63 66 69 3 81 84 87 45 48 51 54 57 60 72 75 18 21 24 27 69 36 0 18
21 6 27 9 39 42 78 12 33 63 66 3 81 84 87 45 15 30 48 51 54 57 60 72 75 24
第一個最小值是 0
第二個最小值是 3
...
第 10 個最小值是27
第 11 個最小值是30

輸入示例:
36 0 6 9 39 42 78 12 15 30 33 63 66 69 3 81 84 87 45 48 51 54 57 60 72 75 18 21 24 27

示例輸出:
27
30
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION