首页 > 其他分享 >2023年5月31日,包装类,Match,System

2023年5月31日,包装类,Match,System

时间:2023-05-31 22:02:20浏览次数:48  
标签:int 31 System Math println public Match out

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);

    }
}

2023年5月31日,包装类,Match,System_Math

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));
    }
}

2023年5月31日,包装类,Match,System_Math_02

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());
    }
}

2023年5月31日,包装类,Match,System_System_03

种子数理解

2023年5月31日,包装类,Match,System_包装类_04

3. System

PrintStream out、InputStream in 和 PrintStream err。

System.out

标准输出流。此流已打开并准备接收输出数据。通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标。

System.in

标准输入流。此流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指定的另一个输入源。

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]);
        }
    }
}

如上述代码,将数组 srcArray 中,从下标 1 开始的数据复制到数组 destArray 从下标 1 开始的位置,总共复制两个。也就是将 srcArray[1] 复制给 destArray[1],将 srcArray[2] 复制给 destArray[2]。这样经过复制之后,数组 srcArray 中的元素不发生变化,而数组 destArray 中的元素将变为 E、B、C、 H,下面为输出结果:

2023年5月31日,包装类,Match,System_System_05

标签:int,31,System,Math,println,public,Match,out
From: https://blog.51cto.com/u_15098423/6390280

相关文章

  • 2023-05-31:给定一个整数数组 A,你可以从某一起始索引出发,跳跃一定次数 在你跳跃的过程
    2023-05-31:给定一个整数数组A,你可以从某一起始索引出发,跳跃一定次数在你跳跃的过程中,第1、3、5...次跳跃称为奇数跳跃而第2、4、6...次跳跃称为偶数跳跃你可以按以下方式从索引i向后跳转到索引j(其中i<j):在进行奇数跳跃时(如,第1,3,5...次跳跃),你将会跳到索引j使得A[......
  • 2023-05-31:给定一个整数数组 A,你可以从某一起始索引出发,跳跃一定次数 在你跳跃的过程
    2023-05-31:给定一个整数数组A,你可以从某一起始索引出发,跳跃一定次数在你跳跃的过程中,第1、3、5...次跳跃称为奇数跳跃而第2、4、6...次跳跃称为偶数跳跃你可以按以下方式从索引i向后跳转到索引j(其中i<j):在进行奇数跳跃时(如,第1,3,5...次跳跃),你将会跳到索引j使得A[i]<=......
  • Linux 初始化之 Systemd机制
    systemd是Linux下的一种init软件,由LennartPoettering带头开发,其开发目标是提供更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果,最终代替现在常用的SystemV与BSD风格init程序。传统sysvinit使用inittab来决定运行......
  • HDU3113(工科数学分析之分解)
    题目:http://acm.hdu.edu.cn/showproblem.php?pid=3113题意:给出一个正整数n,范围是[1,1000000],求出满足方程的一组整数解,要求x最小。分析:这个方程与平方和不同的是,加号两边的任意一个可以为负数,所以直接枚举然后Hash就显得不好做了。那么我用一种比较有效的方式解决。我们知道,那么我......
  • 5.31 保研夏令营第一拒
    保研术语说明:rk:排位,即绩点排名oq:overqualified比如清北大佬投西电寄了,吉大SE没入营,呜呜呜,听说卡rk1,不知道是不是oq了,但是还是很难受,不过幸亏吉大老师安慰我,等9.28之后掉甲给大家推荐一下这位老师!......
  • 浅谈字符集GB18030, GBK, GB2312, Unicode的适应性范围
    目前在中文世界里,计算机系统发展非常快速,传统的Windows已经逐渐跟不上国产化,如国产安卓系统,华为欧拉鸿蒙等系列,国产Linux系统等。国产化普遍支持GB18030!注:GB18030标准符合性认证一度属于国家强制性标准,由中国电子技术标准化研究所(CESI)认证中心进行授权认证。那么这些字符集......
  • C/C++数据结构课程设计[2023-05-31]
    C/C++数据结构课程设计[2023-05-31]数据结构课程设计实验(训)指导书所在学院:计算机科学与工程学院编写说明一.实验总体目标《数据结构》是一门实践性较强的课程,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。本实验的目标是,学生能正确理解和熟练掌握常用数据结构和算......
  • [TEST]腾讯QQ新架构 v9.8.3.13183 绿色便携版
    更新流水:2023.05.30:首个自改官方 9.8.3.13183最新正式版本修改内容:1、基于官方最新版本解包便携化制作;2、默认用户数据储存位于Data目录下;3、默认禁止在线检查更新下载新版安装包;4、支持多开N++账号登陆,支持防撤回;5、不往系统写永久注册表和临时配置文件;6、默认删除便携目录......
  • python 中 re.match和re.search()函数
     两者都返回首次匹配字符串的索引,re.match函数只从头开始匹配,re.search函数不限制只从头开始匹配。001、re.match函数[root@PC1test2]#python3Python3.10.9(main,Mar12023,18:23:06)[GCC11.2.0]onlinuxType"help","copyright","credits"or"license"......
  • [leetcode每日一题]5.31
    1130. 叶值的最小代价生成树提示中等324相关企业给你一个正整数数组 arr,考虑所有满足以下条件的二叉树:每个节点都有 0 个或是 2 个子节点。数组 arr 中的值与树的中序遍历中每个叶节点的值一一对应。每个非叶节点的值等于其左子树和右子树中叶节点的最大值的乘积。在所有这......