【详细+超基础】Java-学习笔记
Java学习笔记系列——孙不坚1208 【详细+超基础】Java-学习笔记 01 【详细+超基础】Java-学习笔记 02 【详细+超基础】Java-学习笔记 03 【详细+超基础】Java-学习笔记 04 【详细+超基础】Java-学习笔记 05 【详细+超基础】Java-学习笔记 06 【详细+超基础】Java-学习笔记 07 【详细+超基础】Java-学习笔记 08 【详细+超基础】Java-学习笔记 09 【详细+超基础】Java-学习笔记 10 【详细+超基础】Java-学习笔记 11 【详细+超基础】Java-学习笔记 12 【详细+超基础】Java-学习笔记 13 【详细+超基础】Java-学习笔记 14 【详细+超基础】Java-学习笔记 15 Java学习笔记系列持续更新中…
九、常用类库
String
用String创建的字符串是固定的 ,不可改变的对象,每一个字符串常量都是字符串类String的一个对象。
String类的常用的构造方法:
1.遇到双引号" "自动创建String类的对象
String s = "hello";
String w = "world";
2.使用构造方法创建String类的对象
1) public String ( );
String s = new String ();
2) public String (String str);
String s = new String ("hello world");
3) public String (char a[]);
char a[] = {'a','b','c'};
String s = new String (a);
4) public String (char a[], int startIndex,int count);
char a[] ={'a','b','c','d','e'};
String s=new string(a,2,2);
5) public String (byte [] array);
byte[] a={ 54,55,56};
String s=new String (a);
6) public String (byte [] array,int offset,int length);
byte[] a={54, 55, 56};
String s=new String (a,1,2);
注意:
通过双引号和String的构造方法创建字符串对象方式的区别:通过双引号自动创建的字符串对象存在于常量池,通过构造方法创建字符串对象存在于堆内存中。
String类的对象的常用成员方法
1) 获取字符串的长度
public int length();
int n ="hello world".length();
2) 字符串的比较
public boolean equals(String s);
String first =new String ("hello");
String second =new String ("abc");
boolean bol=first.equals(second);
public boolean equalsIgnoreCase(String s);
String first= new String ("ABC");
String second= new String ("abc");
boolean bol=first.equalsIgnoreCase(second);
public boolean startsWith(String prefix);
String first ="hello";
first.startsWith("he");
public boolean endsWith(String suffix);
String first ="hello";
first.startsWith("lo");
public int compareTo(String s);
String str="abc";
String s="cde";
int k=str.compareTo(s);
int z=str.compareTo("abc");
int i=str.compareTo("abcdef");
注意:
1.使用"=="判断两个字符串是否相同,是比较两个字符串的引用是否相同,即地址是否相同,使用equals方 法比较的才是字符串的内容是否相同
3) public String trim();
4) 字符串的检索
public int indexOf(String s);
public int indexOf(String s,int startpoint);
public int lastIndexOf(String s);
public int lastIndexOf(String s,int startpoint);
String s="hello world hello java";
s1=s.indexOf("hello");
s2=s.indexOf("hello",5);
s3=s.lastIndexOf("lo",1);
5) 字符的检索
public int indexOf(int char);
public int indexOf(int char,int startpoint);
public int lastIndexOf(int char );
public int lastIndexOf(int char,int startpoint);
6) 截取字符串
public String substring (int startpoint);
public String substring (int start,int end);
7) 替换
public String replace(char oldChar,char newChar);
public String replace(String regex, String newString);
String s="i mist thssp";
String temp=s.replace('t','s');
8) 字符串连接
public String concat(String s)
String str="hello";
String s="java";
String k=str.concat(s);
9) 字符串向字符数组转换
public void getChar(int start,int end,char c[],int offset);
public char[] toCharArray();
public byte[]
10) public String [] split(String regex);
String s ="hello world";
String [] sArray=s.split(" ");
for (int i=0;i<aArray.length;i++ ){
System.out.print(sArray[1]);
}
11) public static String valueOf(type var);
String str =String.valueOf(120);
StringBuffer
String 定义的字符是不可改变的,如果对 String 对象作出改变,就会改变生成新对象,这种操作方式非常消耗内存,这种操作方式比较消耗内存,为了降低内存消耗和提高系统速度, Java提供了可变字符串缓冲类——StringBuffer。
StringBuffer可以实现多次增删改查字符串内容而不产生新对象,每一个StringBuffer对象都有初始容量,只要字符长度不超过其容量,就不需要分配新的内部缓冲容量。
StringBuffer的构造方法
public StringBuffer();
public StringBuffer(int length);
public StringBuffer(String str);
String的大多数方法StringBuffer都可以使用,在此之上,StringBuffer增加了String没有的删除字符串的方法。
StringBuffer的成员方法
1) StringBuffer append(type x)
double d=3.14;
StringBuffer st= new StringBuffer();
st.append(true);
st.append('c').append(d).append(15);
2) public char charAt(int n); 获取字符串中索引是n的字符,索引从0开始。
3) public
String Tokenizer
StringTokenizer类用于将一个字符串分解成若干个子串。
StringTokenizer的构造方法
public StringTokenizer (String str);
public StringTokenizer (String str);
StringTokenizer s1= new StringTokenizer ("我是 中国人");
StringTokenizer s2= new StringTokenizer ("I,am,a,chengxuyuan",",");
StringTokenizer的成员方法
1) public boolean hasMoreTokens();
2) public String nextToken();
3) public Object nextElement();
4) public int countTokens();
案例:
import java.util.StringTokenizer;
public class StringTokenizerDemo {
public static void main(String []args) {
String s="123,大家好。hello";
StringTokenizer s1= new StringTokenizer(s,",。");
while(s1.hasMoreElements()){
System.out.println(s1.nextElement());
}
}
}
运行结果:
123
大家好
hello
欢迎订阅专栏 请你喝杯java , 希望能给需要帮助的朋友带来方便,同时也希望能得到各位大佬的建议。
|