当前位置: 首页 > news >正文

驾校网站建设工业产品外观设计公司

驾校网站建设,工业产品外观设计公司,新建网站怎么优化,免费个人网站自助建设❣博主主页: 33的博客❣ ▶文章专栏分类: Java从入门到精通◀ #x1f69a;我的代码仓库: 33的代码仓库#x1f69a; 目录 1.前言2.数组的概念2.1数组的初始化2.2数组的使用2.2.1数组元素访问2.2.2遍历数组 3.数组是引用类型3.1实例3.2 认识null 4.数组的应用4.1 二分查找4.2… ❣博主主页: 33的博客❣ ▶文章专栏分类: Java从入门到精通◀ 我的代码仓库: 33的代码仓库 目录 1.前言2.数组的概念2.1数组的初始化2.2数组的使用2.2.1数组元素访问2.2.2遍历数组 3.数组是引用类型3.1实例3.2 认识null 4.数组的应用4.1 二分查找4.2 冒泡查找4.3 Arrays.sort()4.4数组的拷贝4.5copyOf拷贝 5.二维数组6.总结 1.前言 本章重点 1.理解数组基本概念 2. 掌握数组的基本用法 3. 数组与方法互操作 4. 熟练掌握数组相关的常见问题和代码 2.数组的概念 数组相同类型元素的一个集合在内存中是一段连续的空间。 2.1数组的初始化 数组的创建 T[] 数组名new T[N];**T**表示数组中存放元素的类型 T[]表示数组的类型 **N**表示数组的长度 例 int[] array1 new int[10]; // 创建一个可以容纳10个int类型元素的数组 double[] array2 new double[5]; // 创建一个可以容纳5个double类型元素的数组数组的初始化 int[] array1 new int[]{0,1,2,3,4,5,6,7,8,9}; int[] array1 {0,1,2,3,4,5,6,7,8,9};//省略了new int[]2.2数组的使用 2.2.1数组元素访问 数组在内存中是一段连续的空间空间的编号都是从0开始的依次递增该编号称为数组的下标数组可以通过下标访问其任意位置的元素。 int[]array new int[]{10, 20, 30, 40, 50};System.out.println(array[0]);System.out.println(array[1]);System.out.println(array[2]);System.out.println(array[3]);System.out.println(array[4]); System.out.println(array[5]); //有5个元素下标最大只能为4array[5]则越界了 // 也可以通过[]对数组中的元素进行修改array[0] 100;System.out.println(array[0])2.2.2遍历数组 int[]array {10, 20, 30, 40, 50}; //用for循环遍历for(int i 0; i 5; i){System.out.println(array[i]);} //用 for-each遍历for (int x : array) {System.out.println(x);} //toString遍历 System.out.println(Arrays.toString(array));//需要导入java.util.Arrays包3.数组是引用类型 内存是一段连续的存储空间主要用来存储程序运行时数据的。比如 程序运行时代码需要加载到内存程序运行产生的中间数据要存放在内存程序中的常量也要保存有些数据可能需要长时间存储而有些数据当方法运行结束后就要被销毁 3.1实例 int[]array {10, 20};3.2 认识null int[] arr null;System.out.println(arr[0]);null 在 Java 中表示 “空引用” , 也就是一个不指向对象的引用。一旦尝试读写, 就会抛出 NullPointerException空指针异常。 4.数组的应用 4.1 二分查找 二分查找只针对有序数组查找的思路是先取中间位置的元素, 然后使用待查找元素与数组中间元素进行比较 如果相等即找到了返回该元素在数组中的下标 如果小于以类似方式到数组左半侧查找 如果大于以类似方式到数组右半侧查找 public class Tsest {public static int find(int[] arr,int a){int l0;int mid-1;int r arr.length-1;while(lr){mid(lr)/2;if(arr[mid]a){System.out.println(找到了);return mid;}if(arr[mid]a){lmid1;}if(arr[mid]a){rmid-1;}}if(lr){System.out.println(没有找到);}return-1;}public static void main(String[] args) {int[] arr{1,2,3,4,5};int xfind(arr,6);System.out.println(x);} } 4.2 冒泡查找 给定一个数组, 让数组升序 (降序) 排序将数组中相邻元素从前往后依次进行比较如果前一个元素比后一个元素大则交换一趟下来后最大元素就在数组的末尾2. 依次从上上述过程直到所有元素都排好。 int mid (left right) / 2;if (toFind arr[mid]) {// 去左侧区间找right mid - 1;} else if (toFind arr[mid]) {// 去右侧区间找left mid 1;} else {// 相等, 说明找到了return mid;}}// 循环结束, 说明没找到return -1;}// 执行结果 5public static void main(String[] args) {int[] arr {9, 5, 2, 7};bubbleSort(arr);System.out.println(Arrays.toString(arr));}public static void bubbleSort(int[] arr) {for (int i 0; i arr.length; i) {for (int j 1; j arr.length-i; j) {if (arr[j-1] arr[j]) {int tmp arr[j - 1];arr[j - 1] arr[j];arr[j] tmp;}}} }冒泡排序性能较低. Java 中内置了更高效的排序算法Arrays.sort() 4.3 Arrays.sort() public static void main(String[] args) {int[] arr{8,5,3,1,9};Arrays.sort(arr);System.out.println(Arrays.toString(arr)); }4.4数组的拷贝 //错误的做法依然执行同一个对象 int[] arr {1,2,3,4,5,6};int[] newArr arr //正确的做法 public static int[] coppy(int[] arr){int[] arr1new int[arr.length];for(int i0;i arr.length;i){arr1[i]arr[i];}return arr1; }public static void main(String[] args) {int[] arr{8,5,3,1,9};int[] arr2coppy(arr);System.out.println(Arrays.toString(arr));System.out.println(Arrays.toString(arr2)); }也使用Arrays中copyOf方法完成数组的拷贝 4.5copyOf拷贝 int[] arr {1,2,3,4}; int[] newArr Arrays.copyOf(arr, arr.length);System.out.println(newArr: Arrays.toString(newArr))//拷贝某一个范围int[] newArr2 Arrays.copyOfRange(arr, 2, 4);//范围为[2,4)System.out.println(newArr2: Arrays.toString(newArr2));}5.二维数组 二维数组本质上也就是一维数组, 只不过每个元素又是一个一维数组 基本语法 数据类型[][] 数组名称 new 数据类型 [行数][列数] { 初始化数据 }二维数组遍历 int[][] arr {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12}};for (int row 0; row arr.length; row) {for (int col 0; col arr[row].length; col) {System.out.printf(%d\t, arr[row][col]);}System.out.println();}// 执行结果 1 2 3 45 6 7 89 10 11 1二维数组的用法和一维数组并没有明显差别, 因此我们不再赘述。 6.总结 本篇文章主要介绍了数组基本概念数组的基本用法数组与方法互操作还有一些在数组中常见的代码数组中还有一些方法博主没有介绍到感兴趣的同学可以通过其他博主的文章进行学习。 下期预告类和对象
http://www.pierceye.com/news/959222/

相关文章:

  • 邯郸移动网站建设价格制作移动端网站价格
  • wordpress设置多站点盐城公司做网站
  • 便宜建站空间深圳品牌网站设计格
  • 网站 建设可行性报告做公司网站的平台
  • 什么网站内链建设建设专业网站怎样收费
  • wordpress 图片站主题seo前景
  • jsp编写网站网站开发售后工作
  • 门户网站建站目标泰安招聘信息最新招聘2022
  • 电商网站建设效果app技术
  • 关于文化的网站模板做免费小说网站怎样赚钱
  • 做外贸的人常用的网站黄骅贴吧二手房
  • 网站建设科目提供网站建设教学视频
  • iis搭建网站教程win10淘宝客网站建设的策略
  • 怎么做一个网站 免费90平方设计
  • 网站建设的目的与意义是什么东营网站建设教程
  • 盐城seo网站优化珠海微信网站
  • 杭州市住房和城乡建设部网站网站建设项目计划书如何写
  • 免费找客户网站wordpress knowhow 下载
  • 大连企业招聘网站网站功能描述书须包含哪些内容
  • 教用vs2013做网站的书王烨医生
  • 滨州网站建设费用哪家购物网站建设好
  • 网站开发客户流程 6个阶段wordpress添加多个下载地址
  • 莱芜网络公司网站深圳网站建设raygf
  • pythom+网站开发规范wordpress用户权利
  • 国外营销型网站建设c网站开发
  • 深圳建设厅网站网站建设平台开发
  • 网站开发咨询seo点击优化
  • 靖安县城乡规划建设局网站做的美食视频网站
  • 福永网站推广徽标设计制作
  • 做网站发布网网站需求建设书