1 字元串的概述和特點 字元串一旦創建,是不可變的。 有雙引號的就是字元串 2 字元串的三種構造方法 2 1 第一種: 格式:String str = new String();| : | 2 2 第二種: 格式:char[] chararray = {'a','b'};| : | String s ...
1 字元串的概述和特點
字元串一旦創建,是不可變的。
有雙引號的就是字元串
***
2 字元串的三種構造方法
2-1 第一種:
格式:String str = new String();|
:-|
2-2 第二種:
格式:char[] chararray = {'a','b'};|
:-|
String str2 = new String(chararray);|
2-3 第三種
格式:byte[] bytearray ={97,98};|
:-|
String str3 = new String(bytearray);|
***
3 字元串的常量池
對於”==“來說,基本類型就是對數值的比較,引用類型則是針對地址的比較。
***
4 —10字元串的常用方法
字元串方法 | 解釋 |
---|---|
str1.equals(str2) | 比較兩個字元串是否一樣,區分大小寫,返回布爾值 |
str1.equalsIgnoreCase(str2) | 比較兩個字元串是否一樣,不區分大小寫,返回布爾值 |
str.length | 字元串長度 |
str1.concat(str2) | 兩個字元串拼接 |
str1.charAt(0) | 索引位置0的字元 |
str1.indexOf('H') | 查看H字元在字元串首次出現的位置 |
str1.substring(5) | 切片,從索引5到末尾 |
str1.substring(5,10) | 從索引5-9[5,9) |
str1.toCharArray(); | 字元串轉換為字元數組 |
str1.getBytes(); | 將字元串轉為位元組數組 |
str1.replace("hell","soft"); | 字元串的替換,新生成一個字元串 |
char[] res = str2.split(","); | 將字元串按照逗號分隔 |
11 Static靜態成員變數記憶體圖
12 Static修飾成員變數
靜態成員變數內容不屬於對象,屬於類,通過類調用。
12-1定義一個學生類
package demo1;
public class Student {
private String name;
private int age;
static String room;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public Student() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
12-1 創建學生類對象,通過類名直接調用Static成員變數
package demo1;
public class demo2 {
public static void main(String[] args) {
Student.room = "1001";
Student stu1 = new Student("wangsiyu",18);
Student stu2 = new Student("wangpei",16);
System.out.println("姓名:"+stu1.getName());
System.out.println("年齡:"+stu1.getAge());
System.out.println("教室:"+Student.room);
System.out.println("姓名:"+stu2.getName());
System.out.println("年齡:"+stu2.getAge());
System.out.println("教室:"+Student.room);
}
}
13 static修飾成員方法
1.有static的成員方法可以直接通過類來調用成員方法,不需要通過對象調用。
2.對於本類中的靜態方法,可以省略類名稱
3.靜態方法可以訪問靜態成員變數,不能訪問非靜態成員變數
13-1 創建學生類
package demo1;
public class Student {
String name = "wangsiyu";
static int room = 1024;
public static void sleep(){
// 靜態成員方法不能調用非靜態成員變數
System.out.println(room);
}
}
13-2 實例化類
package demo1;
public class myclass {
public static void main(String[] args) {
// 靜態成員變數,通過類直接調用
System.out.println(Student.room);
// 靜態成員方法,通過類直接調用
Student.sleep();
}
}
14 靜態代碼塊
1.當用到本類,靜態代碼執行唯一的一次
2.靜態代碼塊先於構造方法執行,執行唯一的一次。
package demo1;
public class staticcode {
static{
System.out.println("hello");
}
public static void Student(){
System.out.println("我是學生方法");
}
}
15 數組工具類Arrays
Arrays是一個和數組相關的工具類,裡面提供了大量關於數組的靜態方法。
將數組轉為特定格式字元串|Arrays.toString(數組);
:-|:-
package demo1;
import java.util.Arrays;
public class test {
public static void main(String[] args) {
int[] array1 = {1,2,3,4,56,67};
String res = Arrays.toString(array1);
System.out.println(res);
//[1, 2, 3, 4, 56, 67]
}
}
將數組進行排序 | Arrays.sort(數組); |
---|
package demo1;
import java.util.ArrayList;
import java.util.Arrays;
public class test {
public static void main(String[] args) {
int[] array1 = {1,2,88,4,56,67};
Arrays.sort(array1);
System.out.println(array1);
for (int i = 0; i < array1.length; i++) {
System.out.println(array1[i]);
}
}
}
16 字元串倒序排列
package demo1;
import java.util.ArrayList;
import java.util.Arrays;
public class test {
public static void main(String[] args) {
// 聲名一個字元串
String str1 = "hsfljfoisdjtksd";
// 將字元串轉為字元數組
char[] res = str1.toCharArray();
// 對數組進行排序
Arrays.sort(res);
// 將數組轉為字元串
String str3 = Arrays.toString(res);
System.out.println(str3);
}
}
17 Math類
絕對值 | Math.ads(); | double |
---|---|---|
派 | Math.PI | double |
向上取整 | Math.ceil() | double |
向下取整 | Math.floor() | double |
四捨五入 | Math.round() | int |