java系统常用类

本文详细介绍了Java中八种基本数据类型的包装类及其常用方法,并提供了转换进制、字符串操作等实例。同时深入探讨了Math类的功能,如取随机数、计算绝对值等实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、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() 去掉字符串首尾的空格

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值