数组的三种方式总结 多维数组的遍历 Arrays类的常用方法总结
一.数组的三种声明方式总结
public class WhatEver {
public static void main(String[] args) {
//第一种 例:
String[] test1 = new String[6];
test1[0] = "数组0";
test1[1] = "数组1"; //第二种 例:
String[] test2 = {"数组0","数组1","数组2","...."}; //第三种 例:
String[] test3 = new String[]{"数组0","数组1","数组2","...."}; }
}
二.多维数组的遍历/二维数组
/二维数组
public class Test1 {
public static void main(String[] args) {
int[] score1=new int[10];
int[][] score2;
String[][] names;
//二维数组的初始化
score2=new int[][]{{1,2,3},{3,4,5,6},{16,7}};//静态初始化
names=new String[6][5];//动态初始化方式一
names=new String[6][];//动态初始化方式二,一定要设置行数
names[0]=new String[5];//第一行中有5个元素
names[1]=new String[4];
names[2]=new String[7];
names[3]=new String[5];
names[4]=new String[8];
names[5]=new String[5];
System.out.println("第一行中的元素:"+names[1].length);
System.out.println(names.length);//打印的是二维数组有几行 //如何遍历二维数组
for(int m=0;m<score2.length;m++){//控制行数
for(int n=0;n<score2[m].length;n++){//一行中有多少个元素(即多少列)
System.out.print(score2[m][n]+" ");
}
System.out.println();
} } }
三. Arrays类的常用方法总结
java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。
3.1 asList()方法
返回一个受指定数组支持的固定大小的列表。
此方法还提供了一个创建固定长度(不可修改的数组 同singletonList)的列表的便捷方法,该列表被初始化为包含多个元素:
List stooges = Arrays.asList("Larry", "Moe", "Curly");
1 @SafeVarargs
2 public static <T> List<T> asList(T... a) {
3 return new ArrayList<>(a);
4 }
使用该方法可以返回一个固定大小的List,如
1 List<String> stringList = Arrays.asList("Welcome", "To", "Java",
2 "World!");
3
4 List<Integer> intList = Arrays.asList(1, 2, 3, 4);
3.2 copyOf()及copyOfRange方法
copyOf(int[] original, int newLength)
复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。
copyOfRange(int[] original, int from, int to)
将指定数组的指定范围复制到一个新数组。
1 String[] names2 = { "Eric", "John", "Alan", "Liz" };
2
3
4 //[Eric, John, Alan]
5 String[] copy = Arrays.copyOf(names2, 3);
6
7 //[Alan, Liz]
8 String[] rangeCopy = Arrays.copyOfRange(names2, 2,
9 names2.length);
3.3 sort()方法:对数组排序
1 String[] names = { "Liz", "John", "Eric", "Alan" };
2 //只排序前两个
3 //[John, Liz, Eric, Alan]
4 Arrays.sort(names, 0, 2);
5 //全部排序
6 //[Alan, Eric, John, Liz]
7 Arrays.sort(names);
另外,Arrays的sort方法也可以结合比较器,完成更加复杂的排序。
1 public static <T> void sort(T[] a, Comparator<? super T> c) {
2 if (LegacyMergeSort.userRequested)
3 legacyMergeSort(a, c);
4 else
5 TimSort.sort(a, c);
6 }
3.4toString(int[] a)
返回指定数组内容的字符串表示形式。
String[] arg = {"a", "b", "c", "d"};
// 结果 [a, b, c, d]
System.out.print(Arrays.toString(arg));
数组的三种方式总结 多维数组的遍历 Arrays类的常用方法总结的更多相关文章
- C#初始化数组的三种方式
C#声明数组并初始化,有三种方式. 对于一维数组: using System;using System.Data;using System.Configuration;using System.Web ...
- PHP数组缓存:三种方式JSON、序列化和var_export的比较
使用PHP的站点系统,在面对大数据量的时候不得不引入缓存机制.有一种简单有效的办法是将PHP的对象缓存到文件里.下面我来对这3种缓存方法进行说明和比较. 第一种方法:JSONJSON缓存变量的方式主要 ...
- JavaScript中清空数组的三种方式
方式1,splice ? 1 2 3 var ary = [1,2,3,4]; ary.splice(0,ary.length); console.log(ary); // 输出 [],空数组,即被清 ...
- reduce计算数组中每个元素出现的次数 数组去重的几种方式 将多维数组转化为一维
// js计算数组中每个元素出现的次数 // var names = ['Alice', 'Bob', 'Tiff', 'Bruce', 'Alice']; // var countedNames = ...
- Java中遍历数组的三种方式复习
1 for循环遍历 通常遍历数组都是使用for循环来实现.遍历一维数组很简单,遍历二维数组需要使用双层for循环,通过数组的length属性可获得数组的长度. 程序示例: package captai ...
- 读取Java文件到byte数组的三种方式
package zs; import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; import java.io ...
- php数组循环的三种方式
PHP 的遍历数组的三种方式:for循环.foreach循环.while.list().each()组合循环 PHP当中数组分为:索引数组[转换成json是数组]和关联数组[转换成json是对象] f ...
- 数组的三种声明方式总结、多维数组的遍历、Arrays类的常用方法总结
1. 数组的三种声明方式 public class WhatEver { public static void main(String[] args) { //第一种 例: String[] test ...
- Java数组的三种打印方式
1.数组的输出的三种方式 一维数组: 定义一个数组 int[] array = {1,2,3,4,5}; (1)传统的for循环方式 for(int i=0;i<array.length;i++ ...
随机推荐
- Vue数据产生变化需要页面渲染完之后执行某操作
1.数据产生变化或者页面需要vue数据渲染完之后加载的东西 Vue.nextTick(function () { alert(123); }); 2 调用vue方法 --------------Vue ...
- Django学习路37_request属性
打印元信息,基本上都会打印出来 类字典结构的 key 键 允许重复 get 请求可以传参,但是长度有限制 最大不能超过 2K post 文件上传使用 get 参数 默认放在网址中 post 在 ...
- luogu P4775 [NOI2018]情报中心 线段树合并 虚树 树的直径trick
LINK:情报中心 神题! 写了一下午 写到肚子疼. 调了一晚上 调到ex 用的是网上dalao的方法 跑的挺快的. 对于链的暴力 我不太会kk. 直接说正解吧: 分类讨论两种情况: 1 答案的两条链 ...
- Pintech品致—示波器探头技术标准倡导者
Pintech品致是仪器仪表的品牌,全球示波器探头第一品牌,示波器探头技术标准倡导者:“两点浮动”电压测试创始人:世界知名品牌,泰克(Tektronix),罗德与施瓦茨R&S,是德(Keys ...
- Java线程池的了解使用—筑基篇
前言 Java中的线程池是一个很重要的概念,它的应用场景十分广泛,可以被广泛的用于高并发的处理场景.J.U.C提供的线程池:ThreadPoolExecutor类,可以帮助我们管理线程并方便地并行执行 ...
- 数据分析second week(7.22~7.28)
描述性统计Python实现 这周学习时间也就几个小时,由于python也正在学习,Anaconda也有,所以那些安装啥的就偷懒下不写了,直接贴出python代码 数据是随机生成,计算是调用库里的函数. ...
- Android menu菜单的深入了解。。。
今天补充刚开始的菜单控件,这是基于: https://www.cnblogs.com/aolong/p/12868015.html 里面的菜单写的. 今天学的后面部分是结合昨天的Fragment一起的 ...
- python3.2求和与最值
#1到100求和sum1=0for x in range(101): sum1=sum1+xprint(sum1) #1到100偶数求和sum2=0for x in range(0,101,2): p ...
- 3、Template Method 模板方法 行为型设计模式
1.了解模板方法 1.1 模式定义 定义一个操作算法中的框架,而将这些步骤延迟加载到子类中. 它的本质就是固定算法框架. 1.2 解决何种问题 让父类控制子类方法的调用顺序 模板方法模式使得子类可以不 ...
- java_线程、同步、线程池
线程 Java使用 java.lang.Thread 类代表线程,所有的线程对象都必须是Thread类或其子类的实例 Thread类常用方法 构造方法 public Thread():分配一个新的线程 ...