/*
- 八种基本数据类型 不完全面向对象 没有属相和方法
- 装箱与拆箱
- 把基本数据类型放到箱子里面 这个过程叫做装箱
- 把基本数据类型从箱子里面拿出来的过程叫拆箱
- 8个类
- Integer int 在一个箱子里面给每一个基本数据类型增加了功能
- Byte byte
- Short short
- Long long
- Float float
- Double double
- Boolean boolean
- Character char
- String
- Date 日期
- Calender 日历
- SimpleDateFromat
- System
- Runtime
- 装箱 构造 方法
- valueOf
- 拆箱 xxxValue
- parseXXX将字符串转成XXX类型
- (字符串只能包含数字)
*/
package com.qf.demo1;
import org.omg.CORBA.SystemException;
public class Test1 {
public static void main(String[] args) {
int i = 6;
//int类型的最大最小值
System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
//手动装箱,将数字放到Integer对象中
Integer integer = new Integer(67);
//重写了toString()
System.out.println(integer);
//可以放字符串类型的数字
Integer integer2 = new Integer("67");
System.out.println(integer);
//将数据类型从箱子里面拆出来
byte b = integer.byteValue();
short s = integer.shortValue();
int in = integer.intValue();
System.out.println(b+" "+s+" "+in);
/*
* 拆箱
* xxxValue()
*
*/
//比较大小,返回结果为第一个参数减第二个参数的差
System.out.println(Integer.compare(3, 4));
Integer i3 = new Integer(5);
Integer i4 = new Integer(6);
/*
* 调用者和参数相比
* 返回结果为调用者的值与参数的差
*/
System.out.println(i3.compareTo(i4));
//将字符串解析成int数字 十进制(字符串中只能包含数字)
int a2 = Integer.parseInt("34");
//将数字转成2进制
System.out.println(Integer.toBinaryString(4));
//将数字转成16进制
System.out.println(Integer.toHexString(16));
//将Integer类型的转成字符串
System.out.println(i3.toString());
//将数字类型的转成字符串
System.out.println(Integer.toString(3));
}
}
String 类练习
package com.qf.demo1;
import java.util.Arrays;
public class Test4 {
public static void main(String[] args) {
String string = "abc";
String string2 = "def";
String string3 = "abc";
int num = string.compareTo(string2);
//string 的值放在常量池中,当string3赋值时将已有的"abc"的地址给了string3
System.out.println(string==string3);
String string4 = new String("abc");
//输出false
System.out.println(string==string4);
//输出true,String 的equals方法重写了,比较的是值
System.out.println(string.equals(string4));
String string5 = "ef";
//判断调用者是否包含参数
boolean f = string2.contains(string5);
System.out.println(f);
//是否以参数开头
System.out.println(string.startsWith("a"));
//忽略大小写比较
System.out.println(string.equalsIgnoreCase(string4));
//判断参数在调用者中第一次出现的位置
System.out.println(string.indexOf("b"));
//判断参数在调用者中最后一次出现的位置
System.out.println(string.lastIndexOf("b"));
// fromIndex从指定下标开始
String string6 = "abcaaa";
//从指定位置反向往回找第一次出现的位置
System.out.println(string.lastIndexOf("a",4));
String string7 = string6.substring(2);
System.out.println(string7);
//截取字符串 左闭右开
String string8 = string6.substring(1, 4);
//将字符串转成字符数组
char[] cs = string.toCharArray();
System.out.println(Arrays.toString(cs));
//将string字母全部转换成大写
System.out.println(string.toUpperCase());
//将string字母全转成小写
System.out.println(string.toLowerCase());
}
}
正则表达式练习
package com.qf.demo1;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test6 {
public static void main(String[] args) {
String string = " 我爱祖国 ,你是祖国的大花朵";
//可以帮助字符串去掉前面的空格
String string2 = string.trim();
System.out.println(string2);
System.out.println(string2.length());
//密码6-8位只能包含字母数字下划线
String string3 = "abcdbrbfg";
//contains equals 只能判断字符串中是否包含什么
/*
* 字符类
* [abc] 能出现a后者b或者c
* [^abc] 除了a或b或c以外的任意字符
* [a-zA-Z0-9]或者\w 能出现a-zA-Z0-9里的任意字母或数字
*
* 预定义字符
* . 代表任意字符
* \d 数字0-9
* \D 非数字
* \w 数字字母下划线
* \W 0次或者多次
*
*
* 数量词
*
* ? 一次或者一次也没有
* * 0次或者多次
* + 至少一次
* {n}恰好零次
* {n,}至少n次
* {n,m}在n到m次
*
*/
String pwd = "11000a";
String regex="[0-9a-zA-Z]{6,8}";
String regex2="\\w{6,8}";
boolean falg = pwd.matches(regex);
System.out.println(falg);
//判断手机号
String phone = "17865923187";
String regex3 = "[1-9][0-9]{10}";
System.out.println(phone.matches(regex3));
//身份证号
String regex4 = "\\d{17}[0-9Xx]";
//邮箱
String regex5 = "\\w+[@][0-9a-z]+[.](net|com|cn)";
String meail = "234343qq.com";
System.out.println(meail.matches(regex5));
//qq
//a要被替换的字母 z 要替换成的字母
String string = "aaaaabcd23455aadssd";
System.out.println(string.replace("a","z"));
//替换所有的,第一个参数放正则表达式,第二个参数放要替换的字母
System.out.println(string.replaceAll("[a-z]","3"));
//根据指定的规则将字符串拆成数组
String[] strings = string.split("[0-9]+");
System.out.println(Arrays.toString(strings));
}
}
网友评论