1. 包装类
/**
* 知识点:包装类
* 理解:8种基本数据类型对应类
* 出现原因:Java为纯面向对象语言(万物皆对象),8种基本数据类型不能new对象。
* 就破坏了Java为纯面向对象语言的特征,所以Java又为8种基本数据类型
* 分别匹配了对应的类,这种类叫做包装类/封装类
*
* 基本数据类型 包装类 继承关系
* byte Byte Object.Number.Byte
* short Short Object.Number.Short
* int Integer Object.Number.Integer
* long Long Object.Number.Long
* float Float Object.Number.Float
* double Double Object.Number.Double
* char Character Object.Character
* boolean Boolean Object.Boolean
* 注意:
* 1.int类型对应的包装类Integer
* 2.char类型对应的包装类Character
* 3.除了int类型和char类型,其余的类型的包装类首字母大写
* 4.所有数值型的包装类都继承Number
*
* //手动装箱:基本数据类型 -> 包装类
int value = 100;
Integer integer = Integer.valueOf(value);
System.out.println(integer);
//手动拆箱:包装类 -> 基本数据类型
int intValue = integer.intValue();
System.out.println(intValue);
//JDK1.5新特性:自动拆装箱
//自动装箱:基本数据类型 -> 包装类
int value = 100;
Integer integer = value;//底层实现:Integer.valueOf(value);
System.out.println(integer);
//自动拆箱:包装类 -> 基本数据类型
int intValue = integer;//底层实现:integer.intValue();
System.out.println(intValue);
//将字符串转换为int值
String str = "123";
int parseInt = Integer.parseInt(str);
System.out.println(parseInt);
*
*/
2. Match
1. Match
静态导入
import static java.lang.Math.*
将导入类的静态属性和方法作为本类中自己的静态属性和方法(直接调用即可)
例:
abs(-100)
sqrt(9)
可读性不强,如果本类中存在方法名相同的方法,会就近调用,可读性不强
package com.wz.match_class;
public class test01 {
/**
* 知识点:Match
* 含义:数学类,是一个final类(无子类)
* 所有的属性和方法都是静态的
*/
public static void main(String[] args) {
System.out.println("a的b次方:"+Math.pow(3,3));
System.out.println("求平方根:"+Math.sqrt(9));
System.out.println("求绝对值:"+Math.abs(-100));
System.out.println("向上取整:"+Math.ceil(1.1));
System.out.println("向下取整"+Math.floor(1.9));
System.out.println("四舍五入:"+Math.round(1.5));
System.out.println("最大值:"+Math.max(10,20));
System.out.println("最小值:"+Math.min(10,20));
System.out.println("随机值"+Math.random());//0-1
int i = (int) ((Math.random() * 100) + 1);
System.out.println(i);
}
}
package com.wz.match_class;
public class test02 {
/**
* Math.abs()是否会有负数
* @param args
*/
public static void main(String[] args) {
System.out.println(Integer.MIN_VALUE);
System.out.println(Integer.MAX_VALUE);
System.out.println(Math.abs(Integer.MAX_VALUE+1));
System.out.println(Math.abs(Integer.MIN_VALUE));
}
}
2. Random
package com.wz.match_class;
import java.util.Random;
public class test03 {
/**
* 知识点:Random
*/
public static void main(String[] args) {
Random ran = new Random();
System.out.println("随机出int取值范围内的数字:"+ran.nextInt());
System.out.println("随机出0~9的整数数字:"+ran.nextInt(10));
System.out.println("随机出double的取值范围内的数字:"+ran.nextDouble());
System.out.println("随机出boolean范围的数据:"+ran.nextBoolean());
}
}
种子数理解
3. System
PrintStream out、InputStream in 和 PrintStream err。
System.out
标准输出流。此流已打开并准备接收输出数据。通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标。
标准输入流。此流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指定的另一个输入源。
System.err
标准的错误输出流。其语法与 System.out 类似,不需要提供参数就可输出错误信息。也可以用来输出用户指定的其他信息,包括变量的值。
package com.wz.system_class;
public class test02 {
/**
*知识点: System.out与System.err区别
* 多线程争抢资源
*/
public static void main(String[] args) {
System.out.println("hello world");
System.err.println("hello python");
System.out.println("hello java");
}
}
package com.wz.system_class;
import java.io.InputStream;
import java.util.Scanner;
public class test01 {
/**
* 知识点:System(系统类)提供的属性
* System.in
* System.out
* System.err
*/
public static void main(String[] args) {
InputStream in = System.in;
Scanner sc=new Scanner(in);
}
}
arraycopy() 方法
该方法的作用是数组复制,即从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。该方法的具体定义如下:
public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
public class System_arrayCopy {
public static void main(String[] args) {
char[] srcArray = {'A','B','C','D'};
char[] destArray = {'E','F','G','H'};
System.arraycopy(srcArray,1,destArray,1,2);
System.out.println("源数组:");
for(int i = 0;i < srcArray.length;i++) {
System.out.println(srcArray[i]);
}
System.out.println("目标数组:");
for(int j = 0;j < destArray.length;j++) {
System.out.println(destArray[j]);
}
}
}
标签:int,31,System,Math,println,public,Match,out From: https://blog.51cto.com/u_15098423/6390280如上述代码,将数组 srcArray 中,从下标 1 开始的数据复制到数组 destArray 从下标 1 开始的位置,总共复制两个。也就是将 srcArray[1] 复制给 destArray[1],将 srcArray[2] 复制给 destArray[2]。这样经过复制之后,数组 srcArray 中的元素不发生变化,而数组 destArray 中的元素将变为 E、B、C、 H,下面为输出结果: