一、字符串转换
1. 数字转字符串
方法一:
int i =5;
/*String str = String.valueOf(i);
System.out.println(i);
方法二:
int i = 5;
Integer it = i;
String str2 = it.toString();//不将int转为Integer则会报错
2. 字符串转数字
非法字符串无法转换(如:1234a)
String str = "12345";
int j = Integer.parseInt(str);
System.out.println(j);
二、数学计算方法
public class TestNumber {
public static void main (String[] args){
float f1 = 5.4f;
float f2 = 5.5f;
System.out.println("四舍五入:" + Math.round(f1));
System.out.println("四舍五入:" + Math.round(f2));
System.out.println("0-1间的随机数" + Math.random());
System.out.println("开方:" + Math.sqrt(9));
System.out.println("次方(2的4次方):" + Math.pow(2,4));
System.out.println("π:" + Math.PI);
System.out.println("e:" + Math.E);
结果:
四舍五入:5
四舍五入:6
0-1间的随机数0.4343142560989989
开方:3.0
次方(2的4次方):16.0
π:3.141592653589793
e:2.718281828459045
手动计算e:
此处的1/n,得指明1为double类型,即1d/n,否则结果为1.0
Integer n = Integer.MAX_VALUE;
System.out.println(Math.pow(1 + 1d/n,n));
三、格式化输出
%s 表示字符串
%d 表示数字
%n 表示换行
public class TestNumber {
public static void main (String[] args){
String name = "小明";
int sum = 2;
String pet = "猫";
//printf和format一样的效果
System.out.printf("%s有%d只%s%n",name,sum,pet);
System.out.format("%s有%d只%s%n",name,sum,pet);
int year = 2020;
//总长度,左对齐,补0,千位分隔符,小数点位数,本地化表达
//直接打印数字
System.out.format("%d%n",year);
//总长度是8,默认右对齐
System.out.format("%8d%n",year);
//总长度是8,左对齐
System.out.format("%-8d%n",year);
//总长度是8,不够补0
System.out.format("%08d%n",year);
//千位分隔符
System.out.format("%,8d%n",year*10000);
//小数点位数
System.out.format("%.2f%n",Math.PI);
三、Character常见方法
public class TestNumber {
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 常见方法
关键字 | 简介 | 使用方法 |
---|---|---|
charAt | 获取字符 | sentence.charAt(0) |
toCharArray | 获取对应的字符数组 | sentence.toCharArray() |
subString | 截取子字符串 | sentence.substring(3,5) |
split | 分隔 | sentence.split(",") |
trim | 去掉首尾空格 | sentence.trim() |
toLowerCase | 小写 | sentence.toLowerCase() |
toUpperCase | 大写 | sentence.toUpperCase() |
indexOf、lastIndexOf、contains | 定位 | sentence.__ |
replaceAll 、replaceFirst | 替换 | sentence.__ |
str1.equals(str3);//str1和str3比较,包括大小写不一样
str1.equalsIgnoreCase(str3);//str1和str3比较,无视大小写
str1.startsWith(str3);//是否以str3开头
str1.endsWith(str3);//是否以str3结尾
四、StringBuffer 可变字符串
StringBuffer sb = new StringBuffer();//新建空的stringbuffer
StringBuffer sb = new StringBuffer(str1);//在str1的基础上建立stringbuffer
sb.append("append");//在末尾添加字符串
sb.delete(4, 10);//删除4-10间的字符
sb.insert(4, "there ");//在4位置插入there,即‘t’位置为4
sb.reverse();//反转
sb.length();//字符串的长度
sb.capacity();//暂时分配的空间
六、实现StringBuffer
立FLAG