自学Java第15Day

学习目标:面向对象进阶


学习内容:常用API


学习时间: 3 点-下午 6 点


学习产出:

1.Math

方法名说明
public static int abs(int a)获取参数绝对值
public static double ceil(double a)向上取整
public static double floor(double a)向下取整
public static int  round(float a)四舍五入
public static int max(int a,int b)获取两个int值中的较大值
public static double pow(double a,double b)返回a的b次幂的值
public static double random()返回值为double的随机值,范围[p.0,1.0)
public class math11 {public static void main(String[] args) {//abs 获取参数绝对值System.out.println(Math.abs(88));//88System.out.println(Math.abs(-88));//88//bug://以int类型为例,取值范围 :- 2147483648//如果没有正数与负数对应,那么传递负数结果有误//-2147483648 没有正数与之对应,所以abs结果产生bug//System.out.println(Math.abs(-2147483647)) ;//2147483647//System.out.println(Math.absExact(-2147483648));System.out.println(Math.ceil(12.34));//13.0System.out.println(Math.ceil(12.54));//13.0System.out.println(Math.ceil(-12.34));//-12.0System.out.println(Math.ceil(-12.54));//-12.0System.out.println(Math.floor(12.34));//12.0System.out.println(Math.floor(12.54));//12.0System.out.println(Math.floor(-12.34));//-13.0System.out.println(Math.floor(-12.54));//-13.0// 四舍五入System.out.println(Math.round(12.34));//12System.out.println(Math.round(12.54));//13System.out.println(Math.round(-12.34));//-12System.out.println(Math.round(-12.54));//-13// 获取两个整数的较大值System.out.println(Math.max(20, 30));//30// 获取两个整数的较小值System.out.println(Math.min(20, 30));//20//获取a的b次幂System.out.println(Math.pow(2, 3));//8//细节://如果第二个参数 0~1之间的小数System.out.println(Math.pow(4,0.5));//2.0System.out.println(Math.pow(2,-2));//0.25//建议://第二个参数:一般传递大于等于1的正整数。System.out.println(Math.sqrt(4));//2.0System.out.println(Math.cbrt(8));//2.0for (int i = 0; i < 10; i++) {System.out.println(Math.floor(Math.random() * 100) + 1);//Math.random() [0.0 1.0)//*100          [0.0 100.0)//floor         去掉了后面的小数//+1            [1 100.0]}}
}

 练习:算法水题一

        判断一个数是否为一个质数

public class math {public static void main(String[] args) {System.out.println(isPrime(997));}public static boolean isPrime(int number){for (int i = 2; i <Math.sqrt(number) ; i++) {if(number%i==0){return false;}}return true;}
}

 练习:算法水题二

        自幂数,一个n位自然数等于自身各个数位上数字的n次幂之和。

        举例1:三位数    1^3 + 5^3 + 3^3 = 153

        举例2:四位数    1^4 + 6^4 + 3^4 + 4^3 = 1634

                如果自幂数是一位数,也叫做:独身数

                三位自幂数:水仙花数            四位自幂数:四叶玫瑰数

                五位自幂数:五角星数            六位自幂数:六合数

                七位自幂数:北斗七星数         八位自幂数:八仙数

                九位自幂数:九九重阳数         十位自幂数:十全十美数

        要求:统计一共有多少个水仙花数。

public class math2 {public static void main(String[] args) throws IOException {int count=0;for (int i = 100; i <=999 ; i++) {int ge=i%10;int shi=i/10%10;int bai=i/100;double sum=Math.pow(ge,3)+Math.pow(shi,3)+Math.pow(bai,3);if(sum==i){count++;}}System.out.println(count);System.out.println(Runtime.getRuntime().availableProcessors());System.out.println(Runtime.getRuntime().freeMemory()/1024/1024);Runtime.getRuntime().exec("shutdown -a");}
}

2.System

方法名说明
public static void exit(int status)终止当前运行的 Java 虚拟机
public static long currentTimeMillis()返回当前系统的时间毫秒值形式
public static void arraycopy(数据源数组,起始索引,目的地数组,起始索引,拷贝个数)贝拷组数

计算机中的时间原点

1970年1月1日   00:00:00

 原因:
        1969年8月,贝尔实验室的程序员肯汤普逊利用妻儿离开一个月的机会。开始着手创造一个全新的革命性的操作系统。他使用B编译语言在老旧的PDP-7机器上开发出了Unix的一个版本。随后,汤普逊和同事丹尼斯里奇改进了B语言,开发出了C语言,重写了UNIX。

1970年1月1日算C语言的生日 

 拷贝数组练习:

public class math11 {public static void main(String[] args) {//拷贝数组int[] arr1 = {1,2,3,4,5,6,7,8,9,10};int[] arr2 = new int[10];
//把arr1数组中的数据拷贝到arr2中
//参数一:数据源,要拷贝的数据从哪个数组而来
//参数二:从数据源数组中的第几个索引开始拷贝
//参数三:目的地,我要把数据拷贝到哪个数组中
//参数四:目的地数组的索引。
//参数五:拷贝的个数
//System.arraycopy(arr1,0, arr2, 0,5);//arr2 : 0 0 0 0 1 2 3 0 0System.arraycopy(arr1, 0, arr2,  4, 3);//验证for (int i = 0; i < arr2.length; i++) {System.out.print(arr2[i] + "");}}
}

运行结果:

0000123000

 

public class math11 {public static void main(String[] args) {//public static void arraycopy(数据源数组,起始索引,目的地数组,起始索引,拷贝个数)//细节://1.如果数据源数组和目的地数组都是基本数据类型,那么两者的类型必须保持一致,否则会报错//2.在拷贝的时候需要考虑数组的长度,如果超出范围也会报错//3.如果数据源数组和目的地数组都是引用数据类型,那么子类类型可以赋值给父类类型//数组拷贝Student s1 = new Student("zhangsan",  23);Student s2 = new Student( "lisi",  24);Student s3 = new Student("wangwu", 25);Student[] arr1 = {s1, s2, s3};Person[] arr2 = new Person[3];//把arr1中对象的地址值赋值给arr2中System.arraycopy(arr1, 0, arr2, 0, 3);//遍历数组arr2for (int i = 0; i < arr2. length; i++){Student stu = (Student) arr2[i];System.out.println(stu.getName() + ", "+ stu.getAge());}}
}

运行结果:

zhangsan, 23
lisi, 24
wangwu, 25

Runtime

方法名说明
public static     Runtime getRuntime()当前系统的运行环境对象
public void     exit(int status)停止虚拟机
public int     availableProcessors()获得CPU的线程数
public long     maxMemory ()JVM能从系统中获取总内存大小(单位byte)
public long     totalMemory()JVM已经从系统中获取总内存大小(单位byte)
public long     freeMemory ()JVM剩余内存大小(单位byte)
public Process exec(String command)运行cmd命令
public class math11 {public static void main(String[] args) throws IOException {//1.获取Runtime的对象Runtime r1 = Runtime.getRuntime();//2.exit 停止虚拟机Runtime.getRuntime().exit(0);//3.获得CPU的线程数System.out.println(Runtime.getRuntime().availableProcessors());//8//4.总内存大小,单位byte字节System.out.println(Runtime.getRuntime().maxMemory() / 1024 / 1024);//4064//5.已经获取的总内存大小,单位byte字节System.out.println(Runtime.getRuntime().totalMemory() / 1024 / 1024);//254//6.剩余内存大小System.out.println(Runtime.getRuntime().freeMemory() / 1024 / 1024);//251//7.运行cmd命令//shutdown:关机//加上参数才能执行//-s:默认在1分钟之后关机//-s -t 指定时间:指定关机时间//-a:取消关机操作//-r: 关机并重启Runtime.getRuntime().exec(  "shutdown -s -t 3600");}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/49479.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【学习笔记】无人机系统(UAS)的连接、识别和跟踪(八)-无人机探测与避让(DAA)机制

目录 引言 5.6 探测与避让&#xff08;DAA&#xff09;机制 5.6.1 基于PC5的探测与避让&#xff08;DAA&#xff09;机制 引言 3GPP TS 23.256 技术规范&#xff0c;主要定义了3GPP系统对无人机&#xff08;UAV&#xff09;的连接性、身份识别、跟踪及A2X&#xff08;Airc…

华为AR6300S路由器开启SSH远程登录

登录华为路由器&#xff1a; 使用控制台线连接到路由器的控制台端口或者通过Telnet或Web界面远程登录到设备。进入系统视图&#xff1a; 输入system-view&#xff08;或者简写为sys&#xff09;命令进入系统视图模式&#xff0c;这是配置全局参数的地方。生成RSA密钥对&#x…

2024年7月27日(星期六)骑行小河边村

2024年7月27日 (星期六&#xff09;骑行小河边村&#xff0c;早8:30到9:00&#xff0c;大观公园门口集合&#xff0c;9:00准时出发【因迟到者&#xff0c;骑行速度快者&#xff0c;可自行追赶偶遇。】 偶遇地点:大观公园门口集合 &#xff0c;家住东&#xff0c;西&#xff0…

【自然语言处理(NLP)】基本概念和应用

自然语言处理&#xff08;NLP&#xff09;&#xff1a;基本概念和应用 目录 引言自然语言处理的基本概念 词法分析句法分析语义分析上下文分析 自然语言处理的关键技术 词嵌入序列到序列模型注意力机制和Transformer预训练语言模型 自然语言处理的应用 文本分类情感分析机器翻…

NodeRed测试modbus RTU或modbus TCP通讯

目录标题 STEP1 添加modbus节点STEP2 查看是否安装成功STEP3 modbusTCP读取写入设置读取设置写入设置 STEP4 读写测试 STEP1 添加modbus节点 节点管理——控制板——安装 找到node-red-contrib-modbus&#xff0c;点击安装 STEP2 查看是否安装成功 安装成功后&#xff0c;左…

30.【C语言】函数系列下

1.嵌套调用 *定义&#xff1a;函数之间的互相调用 *例&#xff1a; int function1(int a, int b) {function2(b);//嵌套函数的调用return a; } //注意&#xff1a;不能将function2定义在function1的里面&#xff0c;这不叫嵌套函数的调用 void function2(int c) {} #include…

linux系统安装python3和pip

一、安装python 1、安装依赖环境 yum install gcc -y yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel yum install zlib zlib-devel openssl -y yum install openssl…

学习记录day16—— 数据结构 双向链表 循环链表

双向链表 1、概念 1&#xff09;就是从任意一个节点既能存储其前驱节点&#xff0c;又能存储后继节点 2)结构体中增加一个指向前驱节点的指针 //定义数据类型 typedef int datatype;//定义节点类型 typedef struct Node {union {int len;datatype data;};struct Node *prio; …

[论文笔记] DCA(Dual Chunk Attention)

DCA&#xff08;Dual Chunk Attention&#xff09;是一种在自然语言处理模型中用来处理长文本的技术。传统的注意力机制&#xff08;Attention&#xff09;在处理长文本时可能会遇到效率和性能瓶颈&#xff0c;因为计算每个单词与其他所有单词之间的关系会随着文本长度的增加而…

Nova Admin - 简洁干净、免费开源的后台管理系统,基于Vue3 / Vite5 / Typescript / Naive UI 等前端开发技术栈

今天看到一款 Vue3 后台管理 admin 系统&#xff0c;研究了一下发现很不错&#xff0c;推荐给大家。 Nova-admin 是一个颜值在线&#xff0c;风格清新、简洁干净后台管理模板&#xff0c;包含了平时常用的管理后台功能页面模板。基础的 UI 组件基于我之前推荐的 naive-ui 开发…

【Golang 面试基础题】每日 5 题(六)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/UWz06 &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏…

HTML前端 盒模型及常见的布局 流式布局 弹性布局 网格布局

CSDN的文章没有“树状目录管理”&#xff0c;所以我在这里整理几篇相关的博客链接。 操作有些麻烦。 CSS 两种盒模型 box-sizing content-box 和 border-box 流式布局 flow layout 弹性布局 flex layout HTML CSS 网格布局 grid layout HTML CSS

百度,有道,谷歌翻译API

API翻译 百度&#xff0c;有道&#xff0c;谷歌API翻译&#xff08;只针对中英相互翻译&#xff09;,其他语言翻译需要对应from&#xff0c;to的code 百度翻译 package fills.tools.translate; import java.util.ArrayList; import java.util.HashMap; import java.util.Lis…

Win11+Anaconda+VScode:mmpose环境配置与基本使用

MMPose 是一款基于 PyTorch 的姿态分析的开源工具箱,是 OpenMMLab 项目的成员之一。 目录 前言 一、mmpose整体框架 二、依赖与安装 从源码安装(推荐) 作为 Python 包安装 三、验证安装 四、使用mmpose处理数据 总结 前言 官方安装手册:欢迎来到 MMPose 中文文档!…

TMS320F28335多级中断及中断响应过程

DSP28335的中断系统设计为多级中断机制&#xff0c;主要包括外设级中断、PIE级中断和CPU级中断。以下是详细的中断使能及响应过程&#xff1a; 1.外设级中断&#xff1a; 当外设产生中断事件时&#xff0c;对应的中断标志寄存器&#xff08;IF&#xff09;的相应位将被自动置…

ABAP+从SAP发出去的PDF文件在第三方系统出现乱码

这是一个 ABAP转换PDF调用函数CALL FUNCTION CONVERT_OTF的问题记录&#xff0c;关乎字体STSong-Light-ldentity-H 和 STSong-Light的区别 背景&#xff1a; 做了一个增强&#xff0c;是采购订单审批后自动发送采购订单PDF1到企业微信&#xff0c;用户再将企业微信收到的P…

C# 代理模式

栏目总目录 概念 代理模式是一种结构型设计模式&#xff0c;它为其他对象提供一种代理以控制对这个对象的访问。在代理模式中&#xff0c;我们创建一个具有现有对象&#xff08;称为“真实对象”或“被代理对象”&#xff09;相同功能的代理对象。代理对象可以在客户端和目标对…

【海康威视】-Java读取监控摄像头实时帧

目录 1、基于JavaCV 1.1、pom依赖 1.2、读取帧Frame 1.3、转换BufferedImage 1.4、完整代码 2、基于Ffmpeg命令 2.1、ffmpeg命令 2.2、读取帧 2.3、转换BufferedImage 2.4、完整代码 1、基于JavaCV 1.1、pom依赖 <dependency><groupId>org.bytedeco<…

最优化理论与方法-第十讲割平面法

文章目录 1. 原问题&#xff1a;2. 割平面法程序步骤2.1 第一次迭代2.2 第二次迭代2.3 第三次迭代 1. 原问题&#xff1a; 给定下列约束优化问题&#xff1a; ( P ) min ⁡ 3 x 1 2 2 x 2 2 s t . − 5 x 1 − 2 x 2 3 ≤ 0 , x ∈ X { x ∈ Z n ∣ 8 x 1 8 x 2 ≥ 1 , 0…

mysql的主从复制和读写分离:

mysql的主从复制和读写分离&#xff1a; 主从复制 面试必问&#xff1a;主从复制的原理 主从复制的模式&#xff1a; 1、mysql的默认模式&#xff1a; 异步模式 主库在更新完事务之后会立即把结果返回给从服务器&#xff0c;并不关心从库是否接受到&#xff0c;以及从库是…