常用类

来源:互联网 发布:photoshop有没有mac版 编辑:程序博客网 时间:2024/04/30 09:57
#常用类
1、String ① String在内存中的表现  ②String的常用方法  ③正则表达式   
④缺点→①StringBuffer②StringBuilder   
##包装类


#字符串相关类
字符串常量“hello”在编译期就被确定,因此放在常量池中。  
new String()创建的字符串不会放入常量池中,而是放在堆中。  
String 对象内容不可变。  
1、与字符数组相关  
char[] charArray=str0.toCharArray();  
char c=str0.chaAt(1)
int index = str0.indexOf('1');//返回一个字符在String中首次出现的位置  
index =str0.lastIndexOf('1');//返回一个字符在String中最后出现的位置   
int length=str0.length();   
str0.contains("he"); //返回一个字符串是否包含另一个字符串  
String subString=str0.subString(1,4);//根据下标截取字符串(前闭后开)要截取下标为1的字符,不会截取下标为4的字符。  
subString= str0.substring(2);//从下标为2开始后边全部截取  
String new Srt=str0.replace('1','L');//替换,产生新的字符串  
newStr=str0.replace("11","TT");  
flag=str0.startsWith("he");//判断一个字符串是否以某个字符串开头     
flag = satr0.endsWith("lo");// 判断一个字符串是否以某个字符串结束   
String str4=str0.concat("world");//拼接 
System.out.println(c);
2.与英文相关的
String upCase=str0.toUpperCase();//全部转成大写  
String lowCase=upCase.toLowerCase();//全部转成小写  
boolean flagl="hello".equalsIgnoreCase("Hello");//忽略大小写比较相等  
System.out.println("hello".comepareTo("hellow"));//(使用字典顺序进行判断)--长度相等,比字符(ASCII),长度不同先比字符(ASCII),再比长度。  
System.out.println("hello".comepareToIgnoreCase("Wrold"));//忽略大小写  
3、重点方法 
//对任意一个字符串做非空判断,都要做两个判断(空与空串),而且顺序不能变  
str0=="";或str0==null;
if(str0 !=null&& str0.equlas("")){    
System.out.prinltn("字符串非空");  
}else{  
System.out.prinltn("字符串无效");  
}  
trim()方法  --去掉一个字符串前后空格  
str0= "空格空格he 空格空格   llo空格空格      ";  
System.out.println(str0.trim()+“!”);   
#matches()--正则表达式匹配(regex)    :一个字符串模板,规定了字符串的样式  
###①任何一个字符串都是正则表达式 
学习模糊符号①三种括号[ ] ( ) { 
}  ② *  +  
一个 [ ] :代表一个字符,内部书写有效的选择。  
{ }:代表前面表达式反复出现的次数。   
():书写格式(|),代表可选择的表达式,可以选择左边的,也可以选择右边的  
{m,n}表示最少出现m次,最多出现n次。  
{m,}表示最少出现m次,多无上限  
{m}表明只能出现m次。  
* 表示任意次  
+ 表示至少一次,多了无限   
? 表示0-1次  
##split()--用于对字符串进行拆分  
例:  
String message="J122-123456-10000.0";  
String[ ]results=message.split("-"或"\\?");  
System.out.prinltn("用户名:"+results[0]);  
System.out.prinltn("密码是:"+results[1]);  
System.out.prinltn("余额是:"+results[2]);
###StringBuffer--内容可变的字符串类型,主要的用途就是用在改变StringBuffer对象的内容(适用于多线程,设计为线程安全,但执行效率低)  
例:StringBuffer sb=new StringBuffer("hello");  
sb.append("world");//在sb对象的末尾添加world  
sb.insert(5,你个);//在sb下标为5的地方添加:你个(输出结果为:hello(hello下标0-4)你个world)  


###StringBuilder--内容可变的字符串类型,主要的用途就是用在改变StringBuilder对象的内容(适用于单线程,不考虑线程安全,执行效率高)
(在大量需要做字符串拼接的时候,我们选用这两个类  )  


#凡是线性安全的执行速度一定慢,凡是线性不安全的执行速度一定快。  
##包装类
1、基本转包装类对象  
①调用包装类的带参构造  
例:  
int a = 10;  
Integer i=new Integer(a);或②直接赋值(自动封箱--JDK1.5以后)Integer i = a;  
System.out.println(i);  
2、包装类对象转基本  
例:  
Integer i=100;  
int a = i ;自动拆箱--JDK1.5以后  
int a =i.intValue();  
System.out.println(a);  
3、包装类对象转String  
例:  
Integer i= 200;  
String str = i.toString();  
str= i+ "";//其实本质还是调用了Integer对象的toString()  
4、String转包装类对象  
例:  
String str="300";  
Integer i=new Integer(str);  
System.out.println(i);  
5、基本转String  
例:  
int i= 400;  
String str=Integer.toString(i);  
System.out.println(str)   
6、String转基本--用的最多  
例:  
String str="250";  
int i = Integer.parseInt(str);  
System.out.println(i);  
##时间日期类Date  、 Calengdar  
取当前日期,通常使用Date  
Date date=new Date();  
//System.out.println(date);  
使用SimpleDateFormat类进行格式化输出  
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年-MM月-dd日     a   hh:mm:ss  E");  
String dateMsg=sdf.format(date);  
System.out.println(dateMsg);    
当设计到具体某个日期的设置或获取的时候,通常使用Calendar  
Calendar cal=Calendar.getInstance();  
##Properties(属性)  
①集合类  ②可以操作文件→配置文件①属性文件②XML文件  
集合类→集合特定①可变大变小②存放不占用连续空间③可存放Object类型(但操作文件是,数据都被作为String) **☆④数据在内部接键值对的方式存放**  键和值一定是成对出现的,键是不允许重复的。  
例:  
//产生容器对象
Properties props=new Properties();
//放入数据--键值对  
props.setProperty("username","zhang3");  
props.setProperty("passwrold","123456");  
props.setProperty("account","10000.0");  
props.setProperty("address","四川成都");  
//修改数据--给已有键赋新值  
props.setProperty("passworld","654321");  
//根据键取出值  
String value=props.getProperty("passworld");  
//根据键移除数据  
proper。remove("address");  
//得到容器中数据的数量  
int size= props.size();  
0 0
原创粉丝点击