JAVA基础学习之路(五)数组的定义及使用
什么是数组:就是一堆相同类型的数据放一堆(一组相关变量的集合)
定义语法:
1.声明并开辟数组
数据类型 数组名[] = new 数据类型[长度];
2.分布完成
- 声明数组:数据类型 数组名 [] = null;
- 开辟数组:数组名 = new 数据类型[长度];
public class test2 {
public static void main(String args[]) {
int arr[] = new int[];
arr[] = ;
arr[] = ;
arr[] = ;
for(int i=;i<;i++) {
System.out.println(arr[i]);
}
}
}
内存分析:
- 声明并开辟数组

2.分布完成

数组内存引用
数组是一个引用数据类型
public class test2 {
public static void main(String args[]) {
int arr[] = new int[];
arr[] = ;
arr[] = ;
arr[] = ;
int arr_tem[] = arr;
arr_tem[] = ;
for(int i=;i<;i++) {
System.out.println(arr[i]);
}
}
}
//输出为
100

以上方法都是数组的动态初始化,都是为数组先开辟空间,之后再赋值。这里,就会联系到之前学习的构造方法了(再实例化对象时产生默认值),下面将介绍数组的两种静态初始化方法。
简单方法:int arr[] = {值,值,值......} //尽量不要用
完整方法:int arr[] = new int[] {值,值,值......}
public class test2 {
public static void main(String args[]) {
int arr[] = new int[] {1,2,3};
int arr_tem[] = arr;
arr_tem[0] = 100;
for(int i=0;i<3;i++) {
System.out.println(arr[i]);
}
}
}
数组操作方法:
- System.arraycopy(源数组,源数组索引,目标数组,目标数组索引,长度)
public class test2 {
public static void main(String args[]) {
int arr_1[] = new int[] {1,2,3,4,5,6,7 };
int arr_2[] = new int[] {11,22,33,44,55,66,77 };
System.arraycopy(arr_1, 2, arr_2, 2, 3);//将数组2替换为11,22,3,4,5,66,77
for(int i=0; i<arr_2.length; i++) {
System.out.println(arr_2[i]);
}
}
}
- java.util.Arrays.sort()
public class test2 {
public static void main(String args[]) {
int arr[] = new int[] {1,3,2,9,5,7,6,4};
java.util.Arrays.sort(arr);
for(int i=0; i<arr.length; i++) {
System.out.println(arr[i]);
}
}
}
JAVA基础学习之路(五)数组的定义及使用的更多相关文章
- JAVA基础学习之路(四)定义简单java类
简单java类开发一般原则: 类名称必须有意义,再怎么说,要让人家看的明白吧 类之中所有属性必须使用private封装,并提供setter,getter方法 类之中可以有多个构造方法,但是必须保留有一 ...
- JAVA基础学习之路(一)基本概念及运算符
JAVA基础概念: PATH: path属于操作系统的属性,是系统用来搜寻可执行文件的路径 CALSSPATH: java程序解释类文件时加载文件的路径 注释: 单行注释 // 多行注释 /*... ...
- JAVA基础学习之路(七)对象数组的定义及使用
两种定义方式: 1.动态初始化: 定义并开辟数组:类名称 对象数组名[] = new 类名称[长度] 分布按成:类名称 对象数组名[] = null: 对象数组名 = new 类名称[长度]: 2 ...
- JAVA基础学习之路(六)数组与方法参数的传递
通常,向方法中传递的都是基本数据类型,而向方法中传递数组时,就需要考虑内存的分配 public class test2 { public static void main(String args[]) ...
- Java基础学习笔记十五 集合、迭代器、泛型
Collection 集合,集合是java中提供的一种容器,可以用来存储多个数据. 在前面的学习中,我们知道数据多了,可以使用数组存放或者使用ArrayList集合进行存放数据.那么,集合和数组既然都 ...
- JAVA基础学习之路(九)[2]String类常用方法
字符与字符串: 1.将字符数组变为字符串(构造方法) public String(char[] value) Allocates a new String so that it represents ...
- JAVA基础学习之路(八)[1]String类的基本特点
String类的两种定义方式: 直接赋值 通过构造方法赋值 //直接赋值 public class test2 { public static void main(String args[]) { S ...
- JAVA基础学习之路(三)类定义及构造方法
类的定义及使用 一,类的定义 class Book {//定义一个类 int price;//定义一个属性 int num; public static int getMonney(int price ...
- Java基础学习之“二维数组”
一.鄙人对二维数组的理解 二维数组就是由多个数组并列而成 二.举例 1.普通数组(一维数组)的图像格式 2.二维数组的图像格式 代码 1 @Test 2 public void xueXi(){ 3 ...
随机推荐
- 如何设置ASP.NET页面的运行超时时间 (转载)
全局超时时间 服务器上如果有多个网站,希望统一设置一下超时时间,则需要设置 Machine.config 文件中的 ExecutionTimeout 属性值.Machine.config 文件位于 % ...
- 爬虫——Scrapy框架案例二:阳光问政平台
阳光热线问政平台 URL地址:http://wz.sun0769.com/index.php/question/questionType?type=4&page= 爬取字段:帖子的编号.投诉类 ...
- 关于mybatis编写sql问题.
最近呢楼主回到长沙进行面试:被问了一个这样的问题,在mybatis中怎么进行模糊查询,望各位大佬在下方进行评论,好让我这菜鸡多学习一些.
- react组件间传值详解
一.父子组件间传值 <1>父传子 父组件:
- VUE通过索引值获取数据不渲染的问题
问题:vue里面当通过索引值获取数据时,ajax数据成功返回,但是在火狐下不渲染 解决:
- hive 学习系列六 hive 去重办法的思考
方法1,建立临时表,利用hive的collect_set 进行去重. create table if not exists tubutest ( name1 string, name2 string ...
- JPMML解析PMML模型并导入数据进行分析生成结果
JPMML解析Random Forest模型并使用其预测分析 导入Jar包 maven 的pom.xml文件中添加jpmml的依赖 <dependency> <groupId> ...
- python3 安装pyhanlp方法
直接pip install pyhanlp的时候会提示缺少Microsoft Visual c++环境, 其实没有Microsoft Visual c++环境也是可以的, 可以先安装jpype1,然后 ...
- python学习笔记:第7天 深浅拷贝
目录 1. 基础数据类型补充 2. set集合 3. 深浅拷贝 1. 基础数据类型补充 (1)join方法 join方法是把一个列表中的数据进行拼接,拼接成字符串(与split方法相反,split方法 ...
- Leecode刷题之旅-C语言/python-141环形链表
/* * @lc app=leetcode.cn id=141 lang=c * * [141] 环形链表 * * https://leetcode-cn.com/problems/linked-li ...