javaSE的学习week10

1. Arrays数组工具类

package cn.hncu_01;

import java.util.Arrays;

/*
 * Arrays:
 * 	此类包含用来操作数组(比如排序和搜索)的各种方法。
 * 
 * 	public static String toString(int[] a):把一个数组转成字符串
 * 	public static void sort(int[] a):按从小到大的顺序排序
 * 	public static int binarySearch(int[] a,int key):二分查找(注意:先排序)
 * 	
 */
public class Demo {
	public static void main(String[] args) {
		int[] a = {11,21,13,42};
		//System.out.println(a);
		Arrays.sort(a);
		System.out.println(Arrays.toString(a));
		System.out.println(Arrays.binarySearch(a, 421));
		
	}
}

2. 包装类

package cn.hncu_02;
/*
 * 包装类
 * 		java为了对基本数据类型进行更多的操作,就提供了基本类型的包装类.
 * byte		Byte 
 * short	Short
 * int		Integer
 * long		Long
 * float	Float
 * double	Double
 * char		Character
 * boolean	Boolean
 * 
 * Integer
 * 	该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,
 * 	还提供了处理 int 类型时非常有用的其他一些常量和方法。
 * 
 * 构造方法
 * 	public Integer(int value):把int类型数据转成Integer
 * 	public Integer(String s):把String转成Integer
 * 		注意:这个字符串必须有数字字符组成

 */
public class Demo {
	public static void main(String[] args) {
		System.out.println(Integer.MAX_VALUE);
		System.out.println(Integer.MIN_VALUE);
	}
}
package cn.hncu_02;
/*
 * int类型和String类型的相互转换(重点)
 * 		实现的方法有很多,重点记着下面2个方法
 * 	int – String
 * 		String.valeuOf(int i)
 * 	String – int
 * 		Integer.parseInt(String s)

 */
public class Demo2 {
	public static void main(String[] args) {
		//int – String
		int i = 100;
		String s = String.valueOf(i);
		System.out.println(s);
		
		//String – int
		int i2 = Integer.parseInt(s);
		System.out.println(i2);
	}
}
package cn.hncu_02;
/*
 * 常用的基本进制转换
 * public static String toBinaryString(int i)
 * public static String toOctalString(int i)
 * public static String toHexString(int i)
 * 十进制到其他进制
 * public static String toString(int i,int radix)
 * 其他进制到十进制
 * public static int parseInt(String s,int radix)
 */
public class Demo3 {
	public static void main(String[] args) {
		System.out.println(Integer.toBinaryString(3));
		System.out.println(Integer.toOctalString(9));
		
		//26个英文字母+10个数字
		System.out.println(Integer.toString(300,36));
		
		System.out.println(Integer.parseInt("111",2));
		
	}
}

3. JDK5的新特性

package cn.hncu_02;
/*
 * 
 */
public class Demo4 {
	public static void main(String[] args) {
		int i =100;
		i++;
		
		Integer ii = new Integer(100);
		
		Integer iii = 100;//自动装箱:把基本数据类型自动转换成包装类型
		iii++;//自动拆箱:把包装类型自动转换成基本类型
	}
}

4.Character类

package cn.hncu_03;

/*
 * Character
 * 	Character 类在对象中包装一个基本类型 char 的值
 * 	此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然
 * 
 * public static boolean isUpperCase(char ch):判断ch是否是大写字母
 * public static boolean isLowerCase(char ch):判断ch是否是小写字母
 * public static boolean isDigit(char ch)::判断ch是否是数字
 * public static char toUpperCase(char ch):把ch转成大写字母
 * public static char toLowerCase(char ch):把ch转成小写字母
 * 
 * 统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数。
 */
public class Demo {
	public static void main(String[] args) {
		// 1. 定义一个已知的字符串
		String s = "asWWa1";
		int bigCounte = 0;
		int smallCounte = 0;
		int digitCounte = 0;

		// 2. 遍历这个字符串
		for(int i =0; i<s.length(); i++){
			char ch = s.charAt(i);
			if(Character.isUpperCase(ch)){
				bigCounte++;
			}else if(Character.isLowerCase(ch)){
				smallCounte++;
			}else if(Character.isDigit(ch)){
				digitCounte++;
			}
		}
		
		System.out.println("大写字母的个数:" + bigCounte);
		System.out.println("小写字母的个数:" + smallCounte);
		System.out.println("数字的个数:" + digitCounte);
	}
}

5. Math类

package cn.hncu_04;
/*
 * Math类
 * 	Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
 * 
 * public static int abs(int a):求绝对值
 * public static double ceil(double a):向上取整
 * public static double floor(double a):向下取整
 * public static int max(int a,int b) min自学:最大值
 * public static double pow(double a,double b):a的b次方
 * public static double random():随机数 返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。
 * public static int round(float a) 参数为double的自学:四舍五入
 * public static double sqrt(double a):求a的平方根
 * 
 * 思考:
 * 		产生[1-100]的随机数,我希望结果是int
 * 		(int)(100*Math.random())+1
 * 
 * 		我要参数任意范围的随机数,怎么办?
 * 		[start,end]
 * 		int(Math.random()*(end-start +1)) + start
 * 		

 */
public class Demo {
	public static void main(String[] args) {
		/*System.out.println(Math.E);
		System.out.println(Math.PI);
		System.out.println(Math.ceil(2.1));*/
		
		for(int i=0;i<50;i++){
			System.out.println((int)(100*Math.random())+1);
			
		}
		
		
	}
}

6.Random类

package cn.hncu_05;

import java.util.Random;

/*
 * Random类
 * 	此类的实例用于生成伪随机数流
 * 
 * public Random():创建一个新的随机数生成器 以当前时间为种子
 * public Random(long seed): 使用单个 long 种子创建一个新的随机数生成器
 * 		给定种子后,每次得到的随机数是相同的.所以叫伪随机数
 * 
 * public int nextInt():生成int数据范围的一个整数
 * public int nextInt(int n):生成0-n的随机数


 */
public class Demo {
	public static void main(String[] args) {
		Random random = new Random();
		for(int i =0;i<5;i++){
			System.out.println(random.nextInt(100));
		}
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值