java Array入门
数组声明
type var-name[];
OR
type[] var-name;
数组声明有两个组件:类型和名称。type声明数组的元素类型。元素类型确定组成数组的每个元素的数据类型。与整数数组一样,我们还可以创建其他基元数据类型的数组,如字符、浮点、双精度等或用户定义的数据类型(类的对象)。因此,数组的元素类型确定数组将持有的数据类型。
// both are valid declarations
int intArray[];
or int[] intArray; byte byteArray[];
short shortsArray[];
boolean booleanArray[];
long longArray[];
float floatArray[];
double doubleArray[];
char charArray[];// an array of references to objects of
// the class MyClass (a class created by
// user)
MyClass myClassArray[]; Object[] ao, // array of Object
Collection[] ca; // array of Collection// of unknown type
尽管上面的第一个声明确立了 intArray 是数组变量这一事实,但不存在实际数组。它只是告诉编译器,此变量 (intArray) 将保存整数类型的数组。若要将 intArray 与实际的整数物理数组链接,必须使用new分配一个,并将其分配给 intArray。
在 Java 中实例化数组
声明数组时,仅创建数组的引用。若要实际创建或向数组提供内存,请创建如下数组:适用于一维数组的 new 的常规形式如下所示:
int intArray[]; //declaring array
intArray = new int[20]; // allocating memory to array
int[] intArray = new int[20]; // combining both statements in one
由 new 分配的数组中的元素将自动初始化为0(对于数字类型)、false(对于布尔值)或null(对于ref类型)。请参阅Java 中的默认数组值
获取数组是一个两步过程。首先,必须声明所需数组类型的变量。其次,您必须分配将保存数组的内存,使用 new,并将其分配给数组变量。因此,在 Java 中,所有数组都是动态分配的。
Array Literal
int[] intArray = new int[]{ 1,2,3,4,5,6,7,8,9,10 }; // Declaring array literal
for循环
数组中的每个元素都可通过其索引访问。索引以 0 开头,以(总数组大小)-1 结束。可以使用 Java for Loop 访问数组的所有元素。
// Java program to illustrate creating an array
// of integers, puts some values in the array,
// and prints each value to standard output. class GFG
{ public static void main (String[] args) { // declares an Array of integers. int[] arr; // allocating memory for 5 integers. arr = new int[5]; // initialize the first elements of the array arr[0] = 10; // initialize the second elements of the array arr[1] = 20; //so on... arr[2] = 30; arr[3] = 40; arr[4] = 50; // accessing the elements of the specified array for (int i = 0; i < arr.length; i++) System.out.println("Element at index " + i + " : "+ arr[i]); }
}
对象数组
// Java program to illustrate creating an array of
// objects class Student
{ public int roll_no; public String name; Student(int roll_no, String name) { this.roll_no = roll_no; this.name = name; }
} // Elements of the array are objects of a class Student.
public class GFG
{ public static void main (String[] args) { // declares an Array of integers. Student[] arr; // allocating memory for 5 objects of type Student. arr = new Student[5]; // initialize the first elements of the array arr[0] = new Student(1,"aman"); // initialize the second elements of the array arr[1] = new Student(2,"vaibhav"); // so on... arr[2] = new Student(3,"shikar"); arr[3] = new Student(4,"dharmesh"); arr[4] = new Student(5,"mohit"); // accessing the elements of the specified array for (int i = 0; i < arr.length; i++) System.out.println("Element at " + i + " : " + arr[i].roll_no +" "+ arr[i].name); }
}
数组作为方法的参数
// Java program to demonstrate
// passing of array to method class Test
{ // Driver method public static void main(String args[]) { int arr[] = {3, 1, 2, 5, 4}; // passing array to method m1 sum(arr); } public static void sum(int[] arr) { // getting sum of array values int sum = 0; for (int i = 0; i < arr.length; i++) sum+=arr[i]; System.out.println("sum of array values : " + sum); }
}
从方法返回数组
// Java program to demonstrate
// return of array from method class Test
{ // Driver method public static void main(String args[]) { int arr[] = m1(); for (int i = 0; i < arr.length; i++) System.out.print(arr[i]+" "); } public static int[] m1() { // returning array return new int[]{1,2,3}; }
}
数组克隆
java Array入门相关推荐
- java 8入门与实践_30个Java入门技巧和最佳实践
java 8入门与实践 Java是最流行的编程语言之一-无论是Win应用程序,Web应用程序,移动,网络,消费电子产品,机顶盒设备,Java随处可见. 在Java上运行的设备超过30亿. 据Oracl ...
- Java快速入门学习笔记9 | Java语言中的方法
有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...
- Java从入门到精通十一(javaIO流)
Java从入门到精通十一(javaIO流) IO引入 字节流和字符流(一些说明) 字节流没有用到缓冲区并不是没有用到内存 为什么输入流是读数据,而输出流是写数据? 字节流说明 字节输入流读数据的方法 ...
- 【笔记-java】java工程师-入门必学
路径 目录 子目录 重点 课程名 备注 java工程师 入门必学 语法基础 环境搭建.开发工具使用.基础语法 java入门第一季 面向对象 继承.封装.多态 java入门第二季 常用工具类 异常.字符 ...
- java array缓存_有java数组
[JAVA零基础入门系列]Day10 Java中的数组 [JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 D ...
- Java基础入门必备词汇汇
#Java基础入门必备词汇汇 一 1.Public ['pʌblik] 公开 2.Static ['stætik] 静态 3.void [vɔid] 无返回 4.main [main] 主要的,主方法 ...
- java从入门到精通_想要开始学java?你要的java从入门到精通布列如下!
java从入门到精通,让我来告诉你! 毫无疑问,java是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握java看似是一件十分困难的事.其实,只要掌握了科学的学习方法 ...
- C功底挑战Java菜鸟入门概念干货(一)
一.认识Java 1.Java 程序比较特殊,它必须先经过编译,然后再利用解释的方式来运行. 2.Byte-codes 最大的好处是--可越平台运行,可让"一次编写,处处运行"成 ...
- java基础入门传智播客 源码_Java-_2020年版Java零基础视频教程(Java 0基础,Java初学入门)魔鬼讲师老杜出品...
不会闲聊!!!不会扯淡!!!小UP只会分享与Java相关的学习资源 还记得那年带你Java入门的一声"吼"吗? B站目前播放量已经快到450多万播放量的Java零基础教程的创作者& ...
最新文章
- iOS学习之路十三(动态调整UITableViewCell的高度)
- 《女性的选择》--[日]今野由梨
- 利用TreeSet给纯数字字符串排序
- Serval and Bus
- Node.js 极简笔记
- 自动化测试用java还是python_现在自动化测试用Java好还是Python好?
- python库封装_使用SIP对C库进行Python封装
- DE33 Relation Between Non-linear Systems and First-order ODEs
- jquery.alerts.js模拟js的alert,confirm的插件
- 字符串和二进制数组转换、将HTML文件显示为页面的一部分、UTF8和GB2312之间的转换...
- python管道_python中管道
- EasyClick 易点云测自动化测试入门到精通
- 流媒体传输协议(rtp/rtcp/rtsp/rtmp/mms/hls)
- 复习————吃饭睡觉打豆豆
- 小企业怎样选择服务器和操作系统
- Python学习手册之函数和模块
- 简述php语言的特点是_PHP语言有哪些特征和优势?
- 科研神器Latex:algorithm2e算法常用技巧小结
- 〖Python 数据库开发实战 - Python与MySQL交互篇⑰〗- 项目实战 - 实现用户管理 - 修改用户
- 07中华小姐大赛落幕 20岁佳丽曾光夺冠_longware_新浪博客
热门文章
- android手机慢,Android手机运行慢?!教你一秒“提速”50%
- 前端改变div排序_前端面试经常问到的问题
- 电脑耳机声音小怎么调大_湘乡电脑耳机怎么样,IP话机推荐
- cuda out of memory gpu还有空间_《室内设计》光与空间的无缝衔接
- springboot10 Web开发静态资源
- ❤️和广告说再见,将“沉浸式阅读”进行到底❤️
- 怎么做应力应变曲线_常用的应力测试方法及其在船舶系统零部件中的应用
- 序号-element-序号根据页数和行数计算
- 手动搭建vue2框架还有vue3框架
- dingo php,Laravel+Dingo/Api 自定义响应的实现