定义字符串
直接定义字符串
String str = “Hello Java”;或者String str;str = “Hello Java”;
使用 String 类定义
具有和类名相同的名称,而且没有返回类型的方法称为构造方法。重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。
-
String()
初始化一个新创建的 String 对象,表示一个空字符序列。 -
String(String original)
初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列。换句话说,新创建的字符串是该参数字符串的副本。例如:
String str1 = new String(“Hello Java”);
String str2 = new String(str1);
这里 str1 和 str2 的值是相等的。 -
String(char[ ]value)
分配一个新的字符串,将参数中的字符数组元素全部变为字符串。该字符数组的内容已被复制,后续对字符数组的修改不会影响新创建的字符串。例如:
char a[] = {‘H’,‘e’,‘l’,‘l’,‘0’};
String sChar = new String(a);
a[1] = ‘s’;
上述 sChar 变量的值是字符串“Hello”。 即使在创建字符串之后,对 a 数组中的第 2 个元素进行了修改,但未影响 sChar 的值。 -
String(char[] value,int offset,int count)
分配一个新的 String,它包含来自该字符数组参数一个子数组的字符。offset 参数是子数组第一个字符的索引,count 参数指定子数组的长度。该子数组的内容已被赋值,后续对字符数组的修改不会影响新创建的字符串。例如:
char a[]={‘H’,‘e’,‘l’,‘l’,‘o’};
String sChar=new String(a,1,4);
a[1]=‘s’;
上述 sChar 变量的值是字符串“ello”。创建字符串对象后,即使在后面修改了 a 数组中第 2 个元素的值,对 sChar 的值也没有任何影响。
string转化为int:
public static void main(String[] args) {
String str = “123”;
int n = 0;// 第一种转换方法:Integer.parseInt(str)
n = Integer.parseInt(str);
System.out.println("Integer.parseInt(str) : " + n);// 第二种转换方法:Integer.valueOf(str).intValue()
n = 0;
n = Integer.valueOf(str).intValue();
System.out.println(“Integer.parseInt(str) : " + n);
}
注(此种方法string类型必须为整数)
int转换为String
整型 int 转 String 字符串类型有以下 3 种方法:
String s = String.valueOf(i);
String s = Integer.toString(i);
String s = “” + i;
public static void main(String[] args) {
int num = 10;
// 第一种方法:String.valueOf(i);
num = 10;
String str = String.valueOf(num);
System.out.println(“str:” + str);
// 第二种方法:Integer.toString(i);
num = 10;
String str2 = Integer.toString(num);
System.out.println(“str2:” + str2);
// 第三种方法:”" + i;
String str3 = num + “”;
System.out.println(“str3:” + str3);
}
字符串的拼接:使用+
或者 字符串一.concat(字符串2);
获取字符串长度:字符串.length;
字符串大小写转化
String str=“abcdef 我 ghijklmn”;
System.out.println(str.toLowerCase()); // 输出:abcdef 我 ghijklmn
System.out.println(str.toUpperCase()); // 输出:ABCDEF 我 GHIJKLMN
去除字符串中的空格:(去除字符串两边的空格)
字符串名.trim()
字符串的替换:replace()
replaceAll("[时使]", “是”);
reolaceFirst("[是]",世);//替换第一个
字符串的比较
equals() 方法
str1.equals(str2);
单个字符可用 ==