day12
1、字符串如果是变量相加,先开空间,再拼接。 字符串如果是常量相加,是先先加,然后在常量池找,如果有就直接返回,否则就创建。
API(Application Programming Interface)
2、Scanner类
jdk5以后出现,用于键盘录入数据
a、基本方法格式
A:hasNextxx()判断是否为某种类型
B:nextxx() 返回某种类型的元素
b、注意的小问题
A:同一个scanner对象,先获取数值,再获取字符串会出现的一个小问题。
B:解决方案: 重新定义一个scanner对象。
把所有的数据都用字符串获取,然后再进行相应的转换(推荐)
3、String类
1、构造方法
A:public String()
B:public String(byte[ ] )bytes)
C: public String (byte[ ] bytes ,int offset ,int length)
D: public String (char[ ] value )
E: public String (char[ ] value,int offset ,int length)
F: public String( string original)
string = "Hello" 和 string s = new string("Hello") 不同。内存中的结构不同。
equals()比较的是内容。
2、
A:判断功能: boolean equals(object obj)
boolean equalsIgnoreCase(String str)
boolean contains(string str)
boolean startWith(string str)
boolean endWith(string str)
boolean isEmpty()
B:获取功能 int length()
char charAt(int index )
int indexOf(int ch)
int indexOf(String str)
int indexOf(int ch , int fromEndex)
int indexOf(String str ,int fromIndex)
string substring(int start)
string substring(int start ,int end)
C:转换功能
byte [ ] getBytes()
char [ ] toCharArrary()
static string valueOf(char [ ] chs)
static string valueOf(int i)
string toLowerCase()
string toUpperCase()
string concat(string str)
D:其它功能
a、替换功能
string replace(char old,char new)
string replace(string old,string new)
b、去空格功能
string trim()
c、按字典比较功能
int compareTo(string str)
int compareToIngoreCase(string str)
day13
1、stringBuffer: 编程安全的可变字符串
线程安全
安全---同步---效率低 银行
不安全---不同步---效率高 论坛
append() 追加字符串
insert() 插入
添加、删除、替换、反转、截取等 ,查看jdk
2、string 和stringbuffer相互转化
SB sb = new SB(s);
sb.appdnd(S);
string str = new string(buffer)
string str2 = buffer.tostring()
3、string 传参是,传的是值,不是地址
4、Array类,,,忽略
5、Interger 类 。。。忽略
6、JDK5以后新特性
自动装箱:把基础类型转化为包装类型
自动拆箱:把包装类型转化为基本类型
7、Intger类,直接赋值
-128到127之间的数据缓冲池问题。
8、charater类 字符类
一些判断方法