首页 > 编程语言 >Java 进阶

Java 进阶

时间:2022-09-26 20:00:09浏览次数:52  
标签:old 进阶 int random Java 随机 数组 new

Java进阶

1. 数组

1.1 数组的创建

注意:new是在堆中创建一个数组或者在堆中分配一块连续的存储空间,把这块空间的引用赋值给数组名

还有需要注意的是,数组定义了之后,系统会给数组默认初始化

类型[] 标识符 = new 类型[容量];

// 数组是引用数据类型,引用数据类型还有:接口,类,枚举,注解

1.2 数组的访问

注意的是:下标索引都是从0开始,且没有-1,需要注意

1.2.1 for遍历

可以通过for循环遍历得到下标获取数组内的所有值

for (int i = 0;i < 数组.length;i++){
	System.out.println(数组[i]);
}

1.2.2 foreach遍历

可以使用这种遍历方法,来之前获取数组的元素,不通过下标

for (类型 元素:数组) {
	System.out.println(元素);
}

1.3 数组扩容

数组的扩容,其本质是将创建一个新的数组,扩大其容量,在将所有值copy到新数组后,在重新使用新数组引用旧数组,以此来扩大旧数组容量

int old = {1};
int new = new int[old.length * 100];

System.arraycopy(old,0,new,0,old.length)

old = new;

/*
1. 优点
	通过索引值可以计算出每个数组元素的地址,通过地址直接访问效率高
2. 缺点
	向数组中插入/插入元素时,可以需要扩容,复制/移动大量的元素,效率低
*/

// 因此数组一般用于存储基础数据,以访问为主,很少做插入/删除操作

1.4 对象数组

如果数组存放的引用数据类型的对象,就叫对象数组

1.5 随机

Math.random() // 随机0-1的随机小数

以此得到:
	1. 随机任意范围double Math.random()*系数
	2. 随机任意范围int (int)(Math.random()*系数)
	3. 随机字母 (char)(Math.random*26)+97 // 注97位码值,65为大写,97为小写

标签:old,进阶,int,random,Java,随机,数组,new
From: https://www.cnblogs.com/JangNara/p/16732174.html

相关文章

  • Java 狂神 Day01 Windows快捷键
    Windows快捷键ctrl+E:打开我的电脑ctrl+shift+esc:打开任务管理器alt+F4:关闭窗口alt+tab:切换窗口shift+del:永久删除win+D:返回桌面 ......
  • javascrip的随机应用 ,和练习案例
    //Math.random()//Math.random()返回0(包括)至1(不包括)之间的随机数:varzxc=Math.random()console.log(zxc);//Math......
  • java JDBC 读取MySQL数据
    1、准备1、mysql成功启动2、准备好jdbc驱动包,根据mysql选择版本,mysql-connector-java-5.1.46.jar  --》Stringdriver="com.mysql.jdbc.Driver";mysql-c......
  • JavaScript手写函数
     //url的queryString转成对象functionqueryStr2Obj(url){constquery={};constsearch=url.split('?')[1];if(!search){return{}......
  • python进阶之路4
    内容回顾PEP8规范代码编写规范及美观python注释语法平时养成写注释的习惯 1.警号 2.三个单引号 3.三个双引号常量与变量1.变量语法结构 变量名......
  • 【Java基础】内部类
    1.内部类在一个类的内部再定义一个类,内部类和外部类名字不能相同。可以分为成员内部类:静态、非静态局部内部类:方法内、代码块内、构造器内,匿名内部类2.成员内部类(1......
  • 五 Java面向对象
    面向对象初识面向对象面向过程&面向对象面向过程思想:步骤清晰简单,第一步做什么,第二步做什么…面对过程适合处理一些较为简单的问题面向对象思想:物以类聚,分......
  • SpringBoot+Vue医患档案管理系统 医院档案管理系统 医院病历管理系统Java Vue MySQL数
    ......
  • Java流程控制05(switch多选择结构)
    多选择结构还有一个实现方式就是switchcase语句switchcase语句判断一个变量与一系列值中的某个值是否相等,每个值称为一个分支语法:switch(表达式){casevalue......
  • Java流程控制01(Scanner)
    用户交互Scanner:之前学习的基本语法中,我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入"Java.util.Scanner"是Java5的新特征,我......