一、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)
代码示例:
int a=100;
String str = Integer.toBinaryString(a);
String str2 = Integer.toOctalString(a);
String str3 = Integer.toHexString(a);
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);
二、 Math 数学函数类
1)Math.abs(数字); //计算绝对值
代码:int a = 10;
int b = 5;
int c = a < b ? b - a : a - b;
int c2 = Math.abs(a - b);
2)Math.max(a, b); //取ab中较大的
代码:int d = a > b ? a : b;
int d2 = Math.max(a, b);
3)Math.min(a, b); //取ab中较小的
代码:int e = a < b ? a : b;
int e2 = Math.min(a, b);
4)Math.random();//从0到1之间随机一个小数
代码for (int i = 0; i < 1; i++) {
int r = (int) Math.random();
System.out.println(r);
}
5)Math.pow(a,b); / /计算a的b次方
代码:double t = Math.pow(2, 8);
System.out.println(t);
例题:T1) 从100~200之间取随机数
for (int i = 0; i < 10; i++) {
int r = (int) Math.random();
System.out.println(r);
}
T2) 从-100~100之间取随机数
for (int i = 0; i < 10; i++) {
int r = (int) (Math.random() * 200) - 100;
System.out.println(r);
}
T3) 取0~100之间的偶数
for (int i = 0; i < 10; i++) {
int r = (int) (Math.random() * 50)*2;
System.out.println(r);
}
T4)从1 2 3 5 7 9 11 13 14 15 16 18 20中随机5个数字
int[] arr = {1,2,3,5,7,9,11,13,14,15,16,18,20};
for (int i = 0; i < 5; i++) {
int r = (int) (Math.random() *arr.length);
System.out.println(arr[r]);
}
T5)从1 2 3 5 7 9 11 13 14 15 16 18 20中随机5个不重复的数字
MyListImp<Integer> list = new MyListImp<Integer>();
for(int i=0;i<13;i++){
list.add(arr[i]);
}
for (int i = 0; i < 10; i++) {
int r = (int) (Math.random() *list.size());
System.out.println(list.get(r));
//移除已经随机过的
list.delete(r);
}
String;长度固定的字符串类
String:构造方法:
a) String(byte[] bs);//将字节数组构造成字符串
b) String(byte[] bs,int offset,int count);//将字节数组中的一部分构造成字符串
c) String(byte[] bs,"编码名称");//将字节数组构造成字符串
d) String(char[] cs);//将字符数组构造成字符串
e) String(char[] cs,int offset,int count);//将字符数组中的一部分字符构造成字符串
字节数组和字符数组都可以变成字符串!!!!
代码示例:
c) byte[] bs = {97,98,99,100,101,102,103,-97,-98};
String s = new String(bs,"UTF-8");
System.out.println(s);
d) char[] cs = {'中','国','湖','南','长','沙'};
String s2 = new String(cs,0,4);
System.out.println(s2);
字符串的创建除了调用构造方法以外,还可以像基本类型一样,直接赋值
String s = "abcdef";
常用方法:
a) charAt(int index) //获得指定下标位置的字符
b) compareTo(String s) //比较两个字符串的大小
int t = s1.compareTo(s2);
如果t==0,说明s1和s2相同
t<0,说明s1小于s2
t>0,说明s1大于s2
String s1 = "abcdef";
String s2 = "Abcdef";
int t = s1.compareTo(s2);
System.out.println(t);
c) contains(String s); 是否包含字符串s
String url="http://www.baidu.com/a/path/aa.html";
boolean b = url.contains(".qq.com");
System.out.println(b);
输出结果为:false
d) endsWith(String s) 是否是以s结尾的
String url ="http://www.hnswjjxy.edu.cn";
boolean b = url.endsWith("edu.cn");
System.out.println(b);
e) startsWith(String s) 是否以s开头
f) equals(Object s) 判断字符串和对象s是不是相同的
g) getBytes() ; 将字符串变成字节数组,使用默认的编码方式
String s = "abcd中国";
byte[] bs = s.getBytes("UTF-8");
for(int i=0;i<bs.length;i++){
System.out.println(bs[i]);
}
h) getBytes(String 编码) ; 将字符串变成字节数组,使用指定的编码方式
byte[] bb = {97,98,99,100,-28,-72,-83,-27,-101,-67};
String ss = new String(bb,"UTF-8");
System.out.println(ss);
i) toCharArray() ;将字符串变成字符数组
g) s.indexOf('g'); 字符笫一次出现的下标位置
k) s.indexOf('g',4);从指定的位置往后搜索
l) s.lastIndexOf('g');从后向前 倒着找
String s = "abcgdefg";
int index = s.lastIndexOf('g');
System.out.println(index);
输出结果为:0
m) length() 字符串中字符的个数
String s = "abcda中国";
int len = s.length();
System.out.println("字符长度:"+len);
int len2 = s.getBytes().length;
System.out.println("字节长度:"+len2);
n) replace(old,new) 将指定的字符替换成新的字符
String s2 = s.replace("ab", "AB");
System.out.println(s2);
输出结果为:ABcda中国
p) split(String s); 根据s切割字符串
String s = "张三,李四,wangwu|zhaoliu";
s = s.replace("|",",");
String[] strs = s.split(",");
for(int i=0;i<strs.length;i++){
System.out.println(strs[i]);
}
输出结果为:张三,李四
wangwu,zhaoliu
r) substring(int beginIndex) 提取字符串
String s = " abcdefg ";
String s2 = s.substring(3);
System.out.println(s2);
输出结果为:d
s) substring(int beginIndex,int endIndex) 提取字符串
String s3 = s.substring(3, 5);
System.out.println(s3);
输出结果为:def
t) toLowerCase() 将字符串中的英文字符全转成小写字母
w) toUpperCase() 将字符串中的英文字符全转成大写字母
v) trim() 去掉字符串首尾的空格