字符与字符串
字符
字符计算
字符计算后的类型不是字符型,如果想要将其赋值给字符需要强制转换类型。
/*
转换大小写字母
*/
char c = 'A';
char d = (char)(c + 'a' - 'A');
System.out.println(d);
逃逸字符
\b 退格符(有些情况在eclipse中run的结果看不出来)
\t 制表符(不一定退几格,到下一个制表位)
\n 换行
\r 回车 (源于打字机,这两个是物殊的逃逸字符)
包裹类型
- 包裹类型的用处
- 获得该类型的最大最小值
- Integer.MIN_VALUE
- Integer.MAX_VALUE
- “.” 运算符
当需要一个类或对象做事情时,用 **.**运算符。
- a.length
- Integer.MAX_VALUE
例如:
判断a是否是不写字母。
System.out.println(Character.isLowerCase('a'));
将大写字母转换成小写字母
System.out.println(Character.toLowerCase('I'));
Math方法
Math给了许多数学计算方法
//将一个数变为绝对值
System.out.println(Math.abs(-11));
//将一个数四舍五入
System.out.println(Math.round(3.23));
//在0至1之间取一个随机数
System.out.println(Math.random());
//计算a的b次方
System.out.println(Math.pow(2, 3));
字符串
- String 是一个类,String的变量是对象的管理者面非所有者
- 就像数组的变量是对象的管理者而非所有者一样
new = 创建
- String s = new String(“a string”);
- 创建一个String对象
- 用 “a string” 初始化这个对象
- 创建管理这个对象的变量 s
- 让 s 管理这个对象
字符串连接
- 用加号可以连接两个字符串
- “hello” + “world” —> “helloworld”
- 当这个加号的一边是字符串而另一边不是时,会将另一边表达为字符串然后作连接。
- 1 + 2 + “age” = “3age”
- “age” + 1 + 2 = “age12”
输入字符串
- in.next() ;读入一个单词,单词的标志是空格
- 空格的包括空格、tab、和换行
- in.nextLine();读入一整行
比较两个字符串是否相等
- 使用 " a.equals(b) "
- 使用 == 是比较两个东西是否是同一个东西
- .equals()是比较两个东西是否含有相同的内容
用字符串调用函数
需要用 “.”这个字符。
访问String里的字符
- s.charAt(index)
- 返回在index上的单个字符
- index的取值范围是0到length()-1
- 第一个字符的index是0,和数组一样
- 但是不能用for-each循环来遍历字符
得到子串
- s.substring(n)
- 得到从n 号位置到末尾的全部内容
- s.substring(b,e)
- 得到从b号位置到e号位置之前的内容
寻找字符
.indexOf
String s1 = "12345678910";
/*
寻找第二个1在字符串中的位置
*/
int loc = s1.indexOf('1');
System.out.println(s1.indexOf('1', loc + 1));
//寻找2345这个字符串在s1这个字符串中的位置
System.out.println(s1.indexOf("2345"));
String 不可修改
string的函数不能修改string本身的内容,只是可以又创建一个字符串出来并赋值给它