学习JavaSE 数组
一维数组
基本概念
1、数组中只允许放同一种类型(可以是父子关系)。
2、数组即对象。
例:
int[ ] arrs={0,1,2};//arrs即一个对象。
3、数组是定长的,不可以增加或者减少。
4、声明数组:int[ ] arrs; 格式为:数组元素类型[ ] 数组名字;
创建一维数组必须声明数组长度: int[] arrs = new int[3];
5、初始化数组,如果不初始化值,系统默认为0。
初始化例:
int arr1 = {1,2,3,5,25};(推荐)
int arr2 = new int[] {1,2,3,5,25};
6、数组元素下标(索引)从0开始计算。
基本方法
数组遍历:
public class Test {
public static void main(String[] args) {
int[] arrs4 = {1,2,3,4,5,6,7,8};
System.out.println("倒序遍历:");
for(int i = arrs4.length-1;i>=0;i--) {
System.out.println(arrs4[i]);
}
System.out.println("foreach遍历:");
for (int arr:arrs4
) {
System.out.println(arr);//快捷键:sout
}
System.out.println("for遍历:");
for(int i =0;i<arrs4.length;i++) {
System.out.println(arrs4[i]);
}
System.out.println("while遍历");
int k =0;
while(k<arrs4.length) {
System.out.println(arrs4[k]);
k++;
}
System.out.println("do while遍历");
int u =0;
do {
System.out.println(arrs4[u]);
u++;
}while (u<arrs4.length
);
}
}
Arrays类
Arrays类:工具类,操作数组使用的。
Arrays.fill:数组元素替换。
Arrays.copyof:数组元素复制。
Arrays.binarySearch:数组元素索引。
public class test3 {
public static void main(String[] args) {
int[] arrs = {1,2,3,4};
System.out.println("替换前:"+Arrays.toString(arrs));
Arrays.fill(arrs,2,3,2);
System.out.println("替换后:"+Arrays.toString(arrs));
int[] arrs1 = {1,2,3,4,0,5,4,1,2};
System.out.println("排序前:"+Arrays.toString(arrs1));
Arrays.sort(arrs1);
System.out.println("排序后:"+Arrays.toString(arrs1));
int[] arrs2 = {1,2,3};
int[] arrs21 = new int [4];
System.out.println("复制前"+Arrays.toString(arrs2));
arrs21 = Arrays.copyOf(arrs2,4);
System.out.println("复制后"+Arrays.toString(arrs21));
int[] arrs3 = {1,2,3};
System.out.println(Arrays.binarySearch(arrs3,3));//返回值是元素索引
}
}
二维数组
基本概念
定义一个二维数组,至少要指定“行”,可以不指定“列”。
int[][] arrays = new int[3][];
基本方法
数组遍历:
public class test2 {
public static void main(String[] args) {
//定义一个数组:
int [][] arrs1= new int[3][];
int[][]arrs2 = {{1,2,3},{2,4},{3,5}};
System.out.println("foreach遍历:");
for (int[] arrs3:arrs2
) {
for (int arrs4:arrs3
) {
System.out.print(arrs4+"\t");
}
System.out.println();
}
System.out.println("for遍历");
for(int i=0;i<arrs2.length;i++) {
for(int j=0;j<arrs2[i].length;j++) {
System.out.print(arrs2[i][j]+"\t");
}
System.out.println();
}
System.out.println("while遍历");
int k = 0;
while(k<arrs2.length) {
int u =0;
while (u<arrs2[k].length) {
System.out.print(arrs2[k][u]+"\t");
u++;
}
System.out.println();
k++;
}
}
}
学习JavaSE 数组的更多相关文章
- PHP学习之中数组-遍历一维数组【2】
在PHP学习之中数组[1]中学会怎么创建一个数组,如果PHP学习之中数组[1]中的元素多的话,我们访问元素又是一个问题了,下面我们就使用for语句while,foreach来遍历我们的数组: < ...
- Python学习之数组类型一:
Python学习之数组类型一: Numpy中的向量与矩阵: 1.创建: 向量.矩阵均由array函数创建,区别在于向量是v=array( [逗号分隔的元素] ), 矩阵是M=array( [[ ]] ...
- [ 转载 ] Java基础12--基础学习总结——数组
java基础学习总结——数组 一.数组的基本概念 数组可以看成是多个相同类型数据组合,对这些数据的统一管理. 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量. 数组的 ...
- Numpy学习之——数组创建
Numpy学习之--数组创建 过程展示 import numpy as np a = np.array([2,3,9]) a array([2, 3, 9]) a.dtype dtype('int32 ...
- JavaSE基础语法学习-方法&数组
方法 Java方法是语句的集合,它们在一起执行一个功能. 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法的本意是功能块,就是实现某 ...
- 零基础入门学习javase,应该怎么学?这是我给你的一个建议
我们知道Java有三个方向,JavaSE,JavaME,JavaEE(老程序员可能会叫J2EE等,不过SUN已经改名了).JavaME主要是嵌入式与游戏开发.那我们先看JavaSE,因为只有学好了Ja ...
- [jQuery学习系列二 ]2-JQuery学习二-数组操作
前言 上一篇内容 已经对于Jquery 有了一些认识, 包括Jquery的选择器和DOM对象, 那么这一篇继续来看下Jquery中很实用的Jquery对于数组的操作. Jquery中对数组的操作大致有 ...
- Java菜鸟学习笔记--数组篇(三):二维数组
定义 //1.二维数组的定义 //2.二维数组的内存空间 //3.不规则数组 package me.array; public class Array2Demo{ public static void ...
- Java SE学习之数组——匿名数组和不规则数组
本文是学习网络上的文章时的总结以及自己的一点实践.感谢大家无私的分享. 近期偶然遇到了数组的问题,学习了匿名数组和不规则数组. 匿名数组适用于仅仅使用一次的情况:不规则数组适用是每行数据总数不确定的情 ...
随机推荐
- 简易的canvas画板
没事仿照windows画板工具用canvas实现了一个简易版的画板. html: <!doctype html> <html> <head> <meta ch ...
- ifup / ifdown eth0 / eno1 reports unknown interface when it exists!
li {list-style-type:decimal;}.wiz-editor-body ol.wiz-list-level2 > li {list-style-type:lower-lati ...
- leetCode题解之字符最短路径解法2
1.题目描述 2.分析 之前使用的大循环再向两边寻找的算法是 O(n^2)复杂度的,可以利用 multimap降低其复杂度. 3.代码 vector<int> shortestToChar ...
- java基础——队列
目录 前言 基础 实现: 两个队列模拟一个堆栈 前言 java已经提供了堆和栈的相对应的类,这里只是模拟一下队列. 队列是一种先进先出的线性表. 基础 java5中新增加了java.util.Queu ...
- Axure响应式进阶
Axure响应式进阶 2018年6月2日luodonggan 随大屏幕分辨率普及,网页设计在交互阶段就必须考虑响应式方案,Axure7作为我偏爱的交互设计工具果然也没让大家失望的新增了Adaptive ...
- Vue2学习笔记:v-for指令
1.使用 <!DOCTYPE html> <html> <head> <title></title> <meta charset=&q ...
- 关于Nodejs开发桌面应用。NW.js 和 Electron 优缺点分析对比
从开发角度来说,选择用 nw.js 还是 election ,区别其实不是很大.大部分工作还是在自己的 javascript 和 HTML 上.国内比较有名的,比如微信web开发工具.钉钉都是基于 n ...
- [翻译] CRPixellatedView-用CIPixellate滤镜动态渲染UIView
CRPixellatedView-用CIPixellate滤镜动态渲染UIView https://github.com/chroman/CRPixellatedView 本人测试的效果: Usage ...
- [翻译] USING GIT IN XCODE [4] 在XCODE中使用GIT[4]
USING GIT IN XCODE LOOKING AT HISTORY Xcode provides a Versions editor, which has three different pe ...
- php算法基础----时间复杂度和空间复杂度
算法复杂度分为时间复杂度和空间复杂度. 其作用: 时间复杂度是指执行算法所需要的计算工作量: 而空间复杂度是指执行这个算法所需要的内存空间. (算法的复杂性体现在运行该算法时的计算机所需资源的多少上, ...