- 字符串转换
- 数字转字符串
- 字符串转数字
- 字符串格式化输出
- 格式化输出
- `printf`和`format`
- 字符
- 保存一个字符的时候使用char
- char对应的封装类
- Character常见方法
- 字符串
- 创建字符串
- `final`
- immutable
- 字符串格式化
- 字符串长度
方法1: 使用String类的静态方法valueOf
方法2: 先把基本类型装箱为对象,然后调用对象的toString
public static void main(String[] args) {
int i = 20;
//方法1
String s = String.valueOf(i);
//方法2
Integer integer = i;
integer.toString();
}
字符串转数字
调用Integer的静态方法parseInt
public static void main(String[] args) {
String s = "999";
int i = Integer.parseInt(s);
}
字符串格式化输出
格式化输出
如果不使用格式化输出,就需要进行字符串连接,如果变量比较多,拼接就会显得繁琐
使用格式化输出,就可以简洁明了
%s 表示字符串
%d 表示数字
%n 表示换行
public static void main(String[] args) {
String name = "第一个字符串";
int i = 8;//数字类型
String name2 = "第二个字符串";
String ziFuCuan = "第一个字符: %s 数字类型: %d 第二个字符串: %s";
System.out.printf(ziFuCuan,name,i,name2);
}
printf和format
printf和format能够达到一模一样的效果,在printf中直接调用了format
public static void main(String[] args) {
String name = "第一个字符串";
int i = 8;//数字类型
String name2 = "第二个字符串";
String ziFuCuan = "第一个字符: %s 数字类型: %d 第二个字符串: %s";
System.out.printf(ziFuCuan,name,i,name2);
System.out.format(ziFuCuan,name,i,name2);
}
字符
保存一个字符的时候使用char
public static void main(String[] args) {
char c1 = 'a';
char c2 = '1';//字符1,而非数字1
char c3 = '中';//汉字字符
char c4 = 'ab'; //只能放一个字符
}
char对应的封装类
char对应的封装类是Character
装箱拆箱概念
public static void main(String[] args) {
char c1 = '1';
Character c = c1;//自动装箱
c1 = c;//自动拆箱
}
Character常见方法
public static void main(String[] args) {
System.out.println(Character.isLetter('a'));//判断是否为字母
System.out.println(Character.isDigit('a')); //判断是否为数字
System.out.println(Character.isWhitespace(' ')); //是否是空白
System.out.println(Character.isUpperCase('a')); //是否是大写
System.out.println(Character.isLowerCase('a')); //是否是小写
System.out.println(Character.toUpperCase('a')); //转换为大写
System.out.println(Character.toLowerCase('A')); //转换为小写
String a = 'a'; //不能够直接把一个字符转换成字符串
String a2 = Character.toString('a'); //转换为字符串
}
字符串
创建字符串
常见创建字符串手段:
- 每当有一个字面值出现的时候,虚拟机就会创建一个字符串
- 调用String的构造方法创建一个字符串对象
- 通过+加号进行字符串拼接也会创建新的字符串对象
public static void main(String[] args) {
String garen = "字面值";//字面值,虚拟机碰到字面值就会创建一个字符串对象
String teemo = new String("csdn");//创建了俩个字符对象
char[] cs = new char[]{'1','2','3','4'};
String teemo2 = new String(cs);//通过字符数组创建了一个字符串对象
System.out.println(teemo2);
String hero3 = garen + teemo;// 通过+加号进行字符串拼接
}
final
String 被修饰为final,所以是不能被继承的
public static void main(String[] args) {
MyString str = new MyString();
}
static class MyString extends String{
}
}
immutable
immutable 是指不可改变的
比如创建了一个字符串对象
String garen ="盖伦";
不可改变的具体含义是指:
不能增加长度
不能减少长度
不能插入字符
不能删除字符
不能修改字符
一旦创建好这个字符串,里面的内容 永远 不能改变
String 的表现就像是一个常量
public static void main(String[] args) {
String garen ="盖伦";
}
字符串格式化
如果不使用字符串格式化,就需要进行字符串连接,如果变量比较多,拼接就会显得繁琐
使用字符串格式化,就可以简洁明了
public static void main(String[] args) {
String name = "第一个字符串";
int i = 8;//数字类型
String name2 = "第二个字符串";
String ziFuCuan = "第一个字符: %s 数字类型: %d 第二个字符串: %s";
String ziFuCuan2 = String.format(ziFuCuan,name,i,name2);
System.out.println(ziFuCuan2);
}
字符串长度
length方法返回当前字符串的长度
可以有长度为0的字符串,即空字符串
public static void main(String[] args) {
String name = "李宏瑞";
String null1 = "";
System.out.println(name.length());
System.out.println(null1.length());
}



