數組,數字包裝類,字符串的處理
數組:
棧內存
在方法中定義的一些基本類型的變量和對象的引用變量都在方法的棧內存中分配,當在一段代碼中定義一個變量時,java就在棧內存中為這個變量分配內存空間,當超出變量的作用域後,java會自動釋放掉為該變量所分配的內存空間。堆內存
堆內存用來存放由new運算符創建的對象和數組,在堆中分配的內存,由java虛擬機的自動垃圾回收器來管理。在堆中創建了一個數組或對象後,同時還在棧內存中定義一個特殊的變量。讓棧內存中的這個變量的取值等於數組或者對象在堆內存中的首地址,棧中的這個變量就成了數組或對象的引用變量,引用變量實際上保存的是數組或對象在堆內存中的地址(也稱為對象的句柄),以後就可以在程序中使用棧的引用變量來訪問堆中的數組或對象// [1,1,1,1,1]
相同類型的多個對象,
引用類型
所有的類
所有的接口
所有的數組
int[] ints = new int[3];
new:指的是在內存空間重新開辟一塊區域
String s = "sdfgdsfgsd";
String s = new String("sdfgdsfgsd");
包裝類:
JAVA是一種面向對象語言,java中的類把方法與數據連接在一起,構成了自包含式的處理單元。但在JAVA中不能定義基本類型(primitive type)對象,為了能將基本類型視為對象進行處理,並能連接相關的方法,java為每個基本類型都提供了包裝類,如int型數值的包裝類integer,boolean型數值的包裝類boolean等,這樣便可以把這些基本類型轉換為對象來處理了。下面將介紹JAVA中提供的各種包裝類。
Integer.parseInt();
byte---Byte
short---Short
int---Integer
long---Long
float---Float
double---Double
boolean---Boolean
char---Character
字符串之間的equals
String str = " a new world a new start ";
返回整個字符串的長度
System.out.println(str.length());
去掉字符串兩邊的空格
System.out.println(str.trim());
取出字符串中指定索引位置的字符
System.out.println(str.charAt(index));
判斷一個字符串是否包含另一個字符串
System.out.println(str.contains(s));
判斷某個字符串是否以某一個字符串開頭
System.out.println(str.startsWith(prefix));
判斷某個字符串是否以某一個字符串結尾
System.out.println(str.endsWith(prefix));
替換字符串中指定的字符或字符串
System.out.println(str.replace(oldChar, newChar));
用**分隔字符
String[] strs = str.split(regex);
將字符串轉換成大寫
System.out.println(str.toUpperCase());
將字符串轉換成小寫
System.out.println(str.toLowerCase());
子字符串在字符串中第一次出現的位置
System.out.println(str.indexOf(str));
子字符串在字符串中最後一次出現的位置
System.out.println(str.lastIndexOf(str));
截取字符串包含索引為*(數字)的字符
System.out.println(str.substring(*));
從第一個數字開始截取, 直到第二個數字, 但是不包含第二個數字的位置的字符
System.out.println(str.substring(a, b));
練習
用for和if循環打印空心正方形
以長寬為5的正方形為例
思路:當行數i為0和4時打印*,其余打印空格;
當列數j為0和4時打印*,其余打印空格即可。
用for循環打印一個空心菱形
思路:與空心方形類似
數組,數字包裝類,字符串的處理