正则表达式 命令行参数 String常用方法

来源:互联网 发布:手机变脸软件 编辑:程序博客网 时间:2024/06/05 09:43

1.static int test() {
int x = 1;
try {
return x;
}
finally
{
++x;
}
}
解析:return x;与return ;二者都执行finally中的代码,return X;因为返回的变量,最终返回变量的初始值。
X值的变化过程:1-》2-》1(最终返回值)
注意:try和finally中同时有return,最终finally的返回值会覆盖try中的返回值,即方法最终返回值为finally中的返回值
2.命令行传参:
方法参数为:String[] args ,具体传的参数在runas->configuration->Arguments窗口->输入参数(多参数用空格分开)

Object 三大继承类体:boolean、number(下面若干常见封装类)、character
1. 包装类
Integer:
构造方法(2):
Integer(int i):把int封装成integer类。
Integer(String s):把string封装成integer类。
属性(4):
MAX_VALUE:整形表示最大范围
MIN_VALUE、SIZE(二进制位数)、TYPE(返回类实例)
方法:
Integer .parseInt(String s):把字符串转换成int型10进制整数。
Integer .toString():返回一个表示该 Integer 值的 String 对象
Integer .valueOf():返回保存指定的 String 的值的 Integer 对象
进制转换
Integer .toBinaryString() Integer.toOctoberString():8进制 Integer.toHexString():16进制
Float:
带有字母的字符串转换成float,数字后面带f可以正常识别,带其他字母会报数字格式转换异常。如:
“12.89f”—>float java.lang.NumberFormatException:
装箱与拆箱
底层是用valueOf()去实现的,128为分界线。即装箱后比较两个对象的值时小于128为true,否则为false。例如:
Integer i1=127;//装箱 int i3=i1;//拆箱 Integeri2=127; System.out.println(i1==i2);//false
Jdk1.5后可以自动装箱可拆箱
注意:==:基本数据类型:比较的是值;引用数据类:比较的是地址。
Character:
字符编码:
ASCII:只针对键盘字母输入组合 Unicode:ASCII、常见中文,日文等…I18N(国家化)
UTF-8:目前通用的一套编码。
GBK指的是中文或者英文(国标),包含简体和繁体
GB2312:简体中文
Character常用方法:
1. charValue():把character转换成基本char型。例如:Character c1=’s’ c1.charValue();
2. isDigit(char ch)、isLetter():是否字母、isLowCase()、isUpperCase(charch)
3. toLowerCase()、toUpperCase() case:实例
Boolean: 把字符串(“true”或者”false”)转换成boolean Boolean.**parseBoolea**n(“true”)//注意字符串取值

String
经典面试题:
1.String s1=”abc”; //赋值方式1 String s4=”abc”;
2.String s2=new String(“abc”) //赋值方式2
3.char c[]={‘a’,’b’,’c’} String s3=new String(c); //赋值方式3
String s5=”a”+”bc”; String s6=”a”; Strings7=s6+”bc”; System.out.println(s1.equals(s7));
总结:
注意:==:基本数据类型:比较的是值;引用数据类:比较的是地址。
1. String s1=”abc”; //和静态属性一样,在编译过后运行之前在方法区的常量池中开辟空间存储“abc”。
2. S4先会在常量池寻找是否已经有“abc”存在。若不存在再创建。
3. String s2=new String(“abc”):创建1个或者2个对象。解析:1.new肯定创建一个对象,–》2.同在执行构造方法的时候去常量池判断是否存在“abc”。
4. String s5=”a”+”bc”; s5==s1:true 解析:1.a和bc属于常量区不同的空间。当把结果“abc”赋值给s5时常量区已经有s1的“abc”,故相等。
5. String s7=s6+”bc”; 变量(s6)与字符串相加,地址肯定不同(在栈中)。
6. String中的length()效果等同于数组中的length属性。

字符串常用方法:
1. char Chart chartAt(intindex): 返回指定索引处的char 值 str.chartAt()
2. length():string长度 3. concat():拼接到字符串尾部
4. contains(CharSquence S ): CharSquence:接口,只要是其子类都可以传 (向上转型)
5. endWith(参数):判断是否以参数结尾6. startsWith(参数) 7. equals():判断字符串的内容是否相同 8. getBytes():得到string的byte数组
9. indexof() :字符在字符串中第一次出现的位置【) intindex=path.indexOf(“/”,path.indexOf(“/”)+1); 找不到返回-1
10. lastIndextof()
11. subString(beginIndex,endIndex);【)一般和indexOf配合使用 12. trim:去除整体字符串前后空格,字符串中间的不能替换
13. replace(oldchar newchar):替换和trim()连用 14. replaceAll()
14. boolean matches(正则)

正则表达式:一位一位来匹配以“^”开始正则表达式,以“[09AZaz]:[az] [^abc]:^也可表示非,除了abc的其它字符 .:任意字符 \d:[0-9] digit \w:字母和数字[0-9A-Za-z] word \s:空格
注意:以上三个单词的范围大写的字母表“非”:\D:表示非0-9,即[^0-9]。
量词: X?:X表示次数 0次或者1次 X +:至少一次 X*:至少“0”次 X{5,8}:范围 X{5,}至少5次

0 0
原创粉丝点击