java.lang包
所有java.lang包中的类都默认已经import了
Java中的8种基本类型都对应了一个类类型
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
以Integer举例
1.将十进制的数字转成二进制,八进制,十六进制
toBinaryString(int t)
toOctalString(int t)
toHexString(int t)
2.将纯数字字符串转换成数字
Integer t = new Integer("1234");
Integer tt = Integer.parseInt("12345");
3.从二进制,八进制,十六进制转成十进制
Integer tt2 = Integer.parseInt("1100100",2);
Integer tt2 = Integer.parseInt("144",8);
Integer tt2 = Integer.parseInt("64",16);
100 =64+32+4 1100100
97 = 64+32+1 1100001
1 1 0 0 1 0 0
64 32 16 8 4 2 1
01100100
2^6*1+2^5*1+2^2*1=64+32+4=100
100 1 100 100
1 4 4
97 1 100 001
1 4 1
144
8^2*1+8^1*4+8^0*4=64+32+4=100
100 110 0100
6 4
64
16^1*6+16^0*4=96+4=100
打包[装箱] 将基本类型的值封装成类类型
int t=100;
Intenger tt = new Integer(t);
拆包[拆箱] 从类类型的对象中提取基本类型的数据
int t2 = tt.intValue();
Java的基本类型和对应的类类型之间会自动的装箱和拆箱
Math 数学函数类
Math.abs(数字); //计算绝对值
Math.max(a, b);//取ab中较大的
Math.min(a, b);//取ab中较小的
Math.random();//从0到1之间随机一个小数
Math.pow(a,b);//计算a的b次方
Number 数字类
BigInteger 大整数类
练习:计算100!
BigDecimal 大数字,可以是浮点数
String StringBuffer和StringBuilder
String:长度固定的字符串类
StringBuffer/StringBuilder:可变字符串
String:
构造方法:
String(byte[] bs);//将字节数组构造成字符串
String(byte[] bs,int offset,int count);//将字节数组中的一部分构造成字符串
String(byte[] bs,"编码名称");//将字节数组构造成字符串
String(char[] cs);//将字符数组构造成字符串
String(char[] cs,int offset,int count);//将字符数组中的一部分字符构造成字符串
字节数组和字符数组都可以变成字符串!!!!
字符串的创建除了调用构造方法以外,还可以像基本类型一样,直接赋值
String s = "abcdef";
常用的方法:
charAt(int index) //获得指定下标位置的字符
compareTo(String s) //比较两个字符串的大小
int t = s1.compareTo(s2);
如果t==0,说明s1和s2相同
t<0,说明s1小于s2
t>0,说明s1大于s2
contains(String s); 是否包含字符串s
endsWith(String s) 是否是以s结尾的
startsWith(String s) 是否以s开头
equals(Object s) 判断字符串和对象s是不是相同的
getBytes() ; 将字符串变成字节数组,使用默认的编码方式
getBytes(String 编码) ; 将字符串变成字节数组,使用指定的编码方式
toCharArray() ;将字符串变成字符数组
s.indexOf('g'); 字符笫一次出现的下标位置
s.indexOf('g',4);从指定的位置往后搜索
s.lastIndexOf('g') 倒着找
length() 字符串中字符的个数
replace(old,new) 将指定的字符替换成新的字符
replace("ab", "AB"); 将指定的字符串替换成新的字符串
split(String s); 根据s切割字符串
substring(int beginIndex) 提取字符串
substring(int beginIndex,int endIndex) 提取字符串
toLowerCase() 将字符串中的英文字符全转成小写字母
toUpperCase() 将字符串中的英文字符全转成大写字母
trim() 去掉字符串首尾的空格
输出特定日期是星期几
以键盘录入的形式提供3个整数,按顺序分别表示为年、月、日。如果只输入一个
整数则表示年,需要判断该年是否是闰年;如果输入两个整数,则表示年和月,需要
输出该年中该月的天数;如果输入3个整数,表示为年、月、日,需要输出 今天是:xxxx年xx月xx日。
实现要求:
1)、使用String类的split()方法,用“,”将字符串分割放在一个String类型的数组中。
2)、结算某天是星期几,首先要判断这一年是闰年还是平年,再判断月份,最后判断日,
再今天是:xxxx年xx月xx日。
字符串对齐调整器
本实验主要作用将指定的字符串可以按照左、中、右三种形式对齐,而且可以设置一行中可以
最多显示多个字符,如果多于指定的最大字符数则在下一行中显示。
实现要求:
1)、在定义好的一个字符串中,选择一个位置插入一定数量的空格,这样文字就会对齐。
2)、如果字符串的长度大于一行的最大字符数,就插入换行符(“\n”),这样在显示它时,
将分行显示。
"ABCDEFGHIJKLMN"
int hangCount=10;
"ABCDEFGHIJ\\nKLMN" ABCDEFGHIJ
KLMN
------------------------------------------------------------------------------------------
日期时间类
Date类
long time = System.currentTimeMillis();
Date d = new Date(time);
System.out.println(d);
//时间格式对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 (a hh:mm:ss)");
//格式化时间
String str = sdf.format(d);
System.out.println(str);
Calendar 日历类 ( 抽象类 )
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int mons = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
int hour = c.get(Calendar.HOUR_OF_DAY);
int min = c.get(Calendar.MINUTE);
int sec = c.get(Calendar.SECOND);
System.out.println(year + "年" + mons + "月" + day + "日 " + hour + ":"
+ min + ":" + sec);
--------------------------------------------------------------------------------------
Random 随机数类
// 创建随机数对象
Random rd = new Random();
for (int i = 0; i < 10; i++) {
// 从int范围内随机一个整数
//int t = rd.nextInt();
//从0~100之间取随机整数 0<= t <100
int t = rd.nextInt(100);
System.out.println(t);
}
Scanner 扫描器类
--------------------------------------------------------------------------
集合框架 预先定义的一组数据结构类
一维数组 线性的 长度固定的 有下标 内存地址连续的
二维数组
动态数组 线性的 长度可变的 有下标 内存地址连续的 【查找数据比较快 插入删除比较慢】
链式列表 现行的 长度可变的 内存地址随机分配 【插入删除比较快 查找数据比较慢 】
泛型:在定义类的时候不明确指定数据类型 而是等到实例化的时候再确定
Collection 一组对象 包括List Set Queue
列表【有序的序列 允许重复的元素】 List
ArrayList 动态数组
LinkedList 列 表【可作为栈 队列和双端队列使用】
Stack 堆栈【先进后出】
Vector 动态数组【主要用在多线程中】
集合【不包含重复元素】 Set
-------------------------------------------------------------------------------------
任务1: 自定义一个栈【先进后出】
实现方式1:用数组实现
实现方式2:用列表实现
任务2:模拟实现一个HashSet
集合【不包含重复元素】Set
HashSet[不保证迭代顺序]
TreeSet[排序集合]
要放入TreeSet中的数据必须是可以排序的:
基本类型
String
实现了Comparable接口的类
队列 Queue
PriorityQueue 排序队列【优先级队列】
主要方法:插入数据到队列add(E e) offer(E e)
移除队列的头 poll()
PriorityBlockingQueue 阻塞队列【同步队列 用在多线程中】
主要方法:插入数据到队列 add(E e) offer(E e)
移除队列的头 poll()
任务1:给定任意一个整数数组 去掉数组中的重复元素 并对的数据排序
任务2:使用数组或者链表实现队列
Java 系统常用类
猜你喜欢
转载自963920460.iteye.com/blog/2316378
今日推荐
周排行