尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
JAVA-api-ArrayListMath
集合长度可变的容器ArrayListpackage APIlearn; import java.util.ArrayList; public class ArrayLIstTest { public static void main(String[] args) { int[] arrnew int[3]; //无限制集合里面可以存储任意类型的数据 ArrayList listnew ArrayList(); list.add(sad); list.add(0); Object objlist.get(0); //多态的弊端无法使用子类的特有行为 Object olist.get(1); if(o instanceof String ){ }else if(o instanceof Integer){ } //泛型限定存储的数据类型 ArrayListStringlist1new ArrayList(); list1.add(gegt); String slist1.get(0); //重复的内容后面的泛型可以不写但是尖括号可以保留 ArrayList Integer list2new ArrayList(); //有返回值为了实现集合面向对象的统一 //集合里面只能添加引用数据类型不能添加基本数据类型 list2.add(0,12); //索引 list2.remove(1); //修改索引修改的数 Integer relist2.set(0,7); //获取get(int index); Integer reslist2.get(2); System.out.println(res); } }练习1package APIlearn; import java.util.ArrayList; public class Packageclass { public static void main(String[] args) { ArrayListIntegerlistnew ArrayList(); Integer i110; Integer i220; Integer i330; list.add(i1); list.add(1); list.add(2); System.out.print([); for(int i0;ilist.size();i){ Integer numlist.get(i); if(ilist.size()-1){ System.out.print(num]); }else{ System.out.print(num,); } } } }练习2package APIlearn; import java.util.ArrayList; public class Testarraylist { public static void main(String[] args) { //1.创建集合对象 ArrayListPackageclasslistnew ArrayList(); //2.创建一些对象 Packageclass s1new Packageclass(zh,23,2); Packageclass s2new Packageclass(zhi,2332,22); Packageclass s3new Packageclass(zhu,233,22); list.add(s1); list.add(s2); list.add(s3); //获取和遍历 for (int i 0; i list.size(); i) { Packageclass stulist.get(i); System.out.println(stu.getId() stu.getName() stu.getAge() ); } System.out.println(findStudent(2332,list )); } //查找返回int public static int findStudent(String id,ArrayListPackageclasslist){ for (int i 0; i list.size(); i) { //遍历集合得到的集合中的每一个元素学生对象判断元素的id和要查找的id是否一致 Packageclass stulist.get(i); //判断,链式编程 if(stu.getId().equals(id)){ return i; } }return -1; } }package APIlearn; import java.lang.reflect.Array; import java.util.ArrayList; public class Packageclass {//id,姓名年龄 private String name; private String id; private int age; public Packageclass(String name, String id, int age) { this.name name; this.id id; this.age age; } public Packageclass() { } public String getName() { return name; } public void setName(String name) { this.name name; } public String getId() { return id; } public void setId(String id) { this.id id; } public int getAge() { return age; } public void setAge(int age) { this.age age; } }MATHfloor向下取整abs取绝对值ceil向上取整round四舍五入max取两个int值中的较大值pow返回a的b次幂random返回值为double 的随机值package APIlearn; public class Mathtest { public static void main(String[] args) { int numMath.abs(-12); System.out.println(num); System.out.println(Math.ceil(23.34)); System.out.println(Math.floor(23.12)); System.out.println(Math.round(-12.67));//四舍五入int System.out.println(Math.pow(2,3)); System.out.println(Math.sqrt(25)); System.out.println(Math.cbrt(27)); System.out.println(Math.random()); } }练习1public class SelfPowerNumber { /** * 判断一个正整数是否为自幂数 * param num 待判断的整数 * return 是自幂数返回 true否则返回 false */ public static boolean isSelfPower(int num) { // 自幂数必须是正整数排除 0 和负数 if (num 0) { return false; } int originalNum num; // 步骤1计算数字的位数 n int digitCount 0; int temp num; while (temp ! 0) { temp temp / 10; digitCount; } // 步骤2计算每一位数字的 digitCount 次幂之和 int sum 0; temp originalNum; while (temp ! 0) { int digit temp % 10; // 取出当前个位数字 sum power(digit, digitCount); // 累加当前位的 n 次幂 temp temp / 10; // 去掉个位 } // 步骤3比较幂次和与原数是否相等 return sum originalNum; } /** * 辅助方法整数幂运算避免 Math.pow 浮点精度问题 * param base 底数 * param exponent 指数 * return base 的 exponent 次幂 */ private static int power(int base, int exponent) { int result 1; for (int i 0; i exponent; i) { result * base; } return result; } public static void main(String[] args) { // 测试案例 int[] testNumbers {153, 1634, 123, 9474, 0, -5, 1}; for (int num : testNumbers) { System.out.println(num 是否为自幂数 isSelfPower(num)); } } }
RELATED

相关推荐

数字IC设计中的无毛刺时钟切换:原理、实现与验证详解

数字IC设计中的无毛刺时钟切换:原理、实现与验证详解

1. 项目概述:为什么时钟切换需要“无毛刺”?在数字IC设计,尤其是SoC(片上系统)设计中,多时钟域是常态。一个芯片内部可能同时存在高速的核心处理时钟、低速的外设接口时钟、以及各种省电模式下的门控时钟。…

📅 2026/9/12 6:38:25
谷歌女性开发者节:技术社区多元创新与个人成长实战指南

谷歌女性开发者节:技术社区多元创新与个人成长实战指南

1. 项目概述:一场技术社区的“她”力量盛会 最近刚参加完谷歌女性开发者节上海站回来,感触颇深。这不仅仅是一场技术大会,更像是一个信号,一个关于技术社区多样性、包容性与未来可能性的强烈信号。如果你是一名在科技行业&#xf…

📅 2026/9/14 2:08:48
SpringBoot实验室管理系统:架构设计与实践

SpringBoot实验室管理系统:架构设计与实践

1. 项目概述:SpringBoot实验室管理系统的核心价值 实验室管理系统在高校、科研院所和企业研发部门中扮演着越来越重要的角色。传统实验室管理往往面临设备台账混乱、预约冲突、耗材管理低效等痛点。我们团队基于SpringBoot框架开发的这套系统,经过两年实…

📅 2026/9/14 8:56:51
MORE NEWS

更多资讯

📰

GetQzonehistory:免费开源QQ空间说说备份工具

GetQzonehistory:免费开源QQ空间说说备份工具 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 想把 QQ 空间里发过的历史说说整理成 Excel 表格、下载好的图片和可浏览的 HTM…

📰

Pandoc 3.6.4 实战:从 Markdown 到 Word/PDF 的高效文档转换与自动化

简介:面向经常处理文档格式转换的写作、排版与技术开发人员,Pandoc 3.6.4 版本是一款开源且跨平台的文档转换工具,支持 Markdown、HTML、LaTeX、Word 的 DOCX 与 EPUB 等多种常见格式的相互转换。该资源包面向 Windows 系统提供,压…

📰

接口自动化测试框架实战:Pytest+Requests+Allure完整方案

如果你每天有三分之一的工作时间花在 Postman 里反复点击接口、比对返回、然后截图贴到群里,那这篇内容就是写给你的。我前阵子陪组里的新同学从零搭接口自动化框架,发现网上教程要么只停在“安装好 pytest 就是入门”,要么一上来甩一个几十层…

📰

从单条请求到 5 分钟绕过 Cloudflare 验证:Scrapling 网页抓取教程

从单条请求到 5 分钟绕过 Cloudflare 验证:Scrapling 网页抓取教程 【免费下载链接】Scrapling 🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Dont be shy, join here: https://disc…

📰

Java实现五子棋AI:Alpha-Beta剪枝实战与性能优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

AssetRipper:三步跑通 Unity 资产提取的完整指南

AssetRipper:三步跑通 Unity 资产提取的完整指南 【免费下载链接】AssetRipper GUI application to analyze game files 项目地址: https://gitcode.com/GitHub_Trending/as/AssetRipper AssetRipper 是一款用于 Unity 资产提取与游戏文件分析的图形化工具&a…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬