动手动脑及课后实践3
(一)運行結果:?
? ? ? ? ? ? ? ? ? ? ? ?
分析原因:在Java中,內容相同的字串常量(“Hello”)只保存一份以節約內存,所以s0,s1,s2實際上引用的是同一個對象。
編譯器在編譯s2一句時,會去掉“+”號,直接把兩個字串連接起來得一個字串(“Hello”)。這種優化工作由Java編譯器自動完成。
當直接使用new關鍵字創建字符串對象時,雖然值一致(都是“Hello”),但仍然是兩個獨立的對象。
(二)運行結果:
?????????
分析原因:給字串變量賦值意味著:兩個變量(s1,s2)現在引用同一個字符串對象“a”!
String對象的內容是只讀的,使用“+”修改s1變量的值,實際上是得到了一個新的字符串對象,其內容為“ab”,它與原先s1所引用的對象”a”無關,所以,s1==s2返回false;
代碼中的“ab”字符串是一個常量,它所引用的字符串與s1所引用的“ab”對象無關。
String.equals()方法可以比較兩個字符串的內容。
?
Length():獲取字串長度;空格也算他的長度,得到一個字串的長度的實現:zifu.length()
charAt():獲取指定位置的字符;實現方法:zifu.charAt()
getChars():獲取從指定位置起的子串復制到字符數組中(它有四個參數,在示例中有介紹);實現方法:zifu.getChars(int a,int b,string c,int d)
replace():子串替換
toUpperCase()、 toLowerCase():大小寫轉換
trim():去除頭尾空格:
toCharArray():將字符串對象轉換為字符數組
設計思想:
加密方法是將A~Z這26都向后錯三位,使得A=D,B=E……利用String類型來實現。
流程圖:
轉載于:https://www.cnblogs.com/hy-666/p/4909901.html
總結
以上是生活随笔為你收集整理的动手动脑及课后实践3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ReactJs和React Native
- 下一篇: RMAN的配置