No1_3.数组初始化_Java学习笔记
public class HelloArray {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("HELLO HelloArray~");
/*******
* 创建一维数组****** 声明数组格式: 【1】数组元素类型 数组名字[];数组元素类型 数组名字[][]; 【2】数组元素类型[]
* 数组名字;数组元素类型[][] 数组名字;
* **********/
int arr1[]; // 声明一维数组;
arr1 = new int[5]; // new为数组分配空间;5,数组的个数(从0开始);
int arr2[] = new int[7]; // 声明并分配 内存;
// 初始化一维数组,常用
arr1[0] = 1;
arr2[0] = 9;
int[] arr3 = new int[] { 1, 2, 3, 4, 5 }; // 第一种初始化方式
int[] arr4 = { 16, 7, 8, 9, 10 }; // 第二种初始化方式
// ********************范例一:求一维数组中各元素的和
int sumArr3 = 0;
for (int i = 0; i < 5; i++) {
if (i < 4) {
System.out.print(arr3[i] + "+");
} else {
System.out.print(arr3[i] + "=");
}
sumArr3 = sumArr3 + arr3[i];
}
System.out.println(sumArr3);
// ********************范例二:获取一维数组中最小的值
System.out.println("一维数组中的元素有:");
for (int arr4One : arr4) {
System.out.print(arr4One + "\t");
}
System.out.println();
int small = arr4[0];
for (int j = 1; j <= arr4.length - 1; j++) {
if (small > arr4[j])
small = arr4[j];
}
System.out.println("arr4数组中的最小值是" + small);
/******************************************
* 多维数组:二维常用,三维偶尔
****************************************/
int arr5[][];
int arr6[][];
// 分配相同内存
arr5 = new int[2][4]; // 2表示一维数组的个数,4表示一维数组数组的长度;
// 单独分配内存
arr6 = new int[2][];
arr6[0] = new int[3];
arr6[1] = new int[2];
// 二维数组初始化
int arr7[][] = { { 1, 2, 3, 4 }, { 7, 8, 9, 10 } };
for (int ai = 0; ai < arr7.length; ai++) {
for (int aj = 0; aj < arr7[ai].length; aj++) {
System.out.print(arr7[ai][aj] + "\t");
}
System.out.println();
}
/**********************************
* 三维数组
*****************************************/
int arr8[][][] = new int[][][] { { { 1, 2, 3 }, { 4, 5, 6 } },
{ { 10, 20, 30 }, { 70, 80, 90 }, { 4, 5, 6 } },
{ { 55, 22, 11 }, { 88, 77, 66 }, { 1, 2, 3 }, { 7, 5, 4 } } };
for (int thri = 0; thri < arr8.length; thri++) {
System.out.println("三维数组中的第" + (thri + 1) + "个元素是" + arr8[0].length
+ "维数组:");
for (int thrj = 0; thrj < arr8[thri].length; thrj++) {
for (int thrk = 0; thrk < arr8[thri][thrj].length; thrk++) {
System.out.print(arr8[thri][thrj][thrk] + "\t");
}
System.out.println();
}
}
// ******************** 范例三:对矩阵进行转置运算;以arr9为例
int arr9[][] = { { 1, 2, 3, 4 }, { 7, 8, 9, 10 } };
System.out.println("转置前的矩阵是:");
printArray(arr9);
int arr10[][] = new int[arr9[0].length][arr9.length];
for (int mi = 0; mi < arr9.length; mi++) {
for (int mj = 0; mj < arr9[mi].length; mj++) {
arr10[mj][mi] = arr9[mi][mj];
}
}
System.out.println("转置后的矩阵是:");
printArray(arr10);
// 范例四:求方阵的迹,方阵主对角线上所有元素之和
int arrK[][] = new int[][] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
System.out.println("方阵arrK是");
printArray(arrK);
int sumK = 0;
for (int x = 0; x < arrK.length; x++) {
sumK += arrK[x][x];
}
System.out.println("方阵的迹是" + sumK);
}// main end
private static void printArray(int[][] arr11) { // 遍历数组,这个函数一定要放要main方法外面,否则报错
for (int ni = 0; ni < arr11.length; ni++) {
for (int nj = 0; nj < arr11[ni].length; nj++) {
System.out.print(arr11[ni][nj] + "\t");
}
System.out.println();
}
}
}// HelloArray end
输出:
HELLO HelloArray~
1+2+3+4+5=15
一维数组中的元素有:
16 7 8 9 10
arr4数组中的最小值是7
1 2 3 4
7 8 9 10
三维数组中的第1个元素是2维数组:
1 2 3
4 5 6
三维数组中的第2个元素是2维数组:
10 20 30
70 80 90
4 5 6
三维数组中的第3个元素是2维数组:
55 22 11
88 77 66
1 2 3
7 5 4
转置前的矩阵是:
1 2 3 4
7 8 9 10
转置后的矩阵是:
1 7
2 8
3 9
4 10
方阵arrK是
1 2 3
4 5 6
7 8 9
方阵的迹是15
No1_3.数组初始化_Java学习笔记的更多相关文章
- coco2dx-2.2.2 win32启动过程(opengl 和 窗口大小初始化部分) - 学习笔记 1
因为最近要做不同分辩率的适配,所于看了下引擎这方面的代码,记录一下当是学习笔记,cocos2d-x 版本 2.2.2 , 例子是samples\Cpp\TestCpp下的 TestCpp. 先看下ma ...
- No1_4.数组的基本操作_Java学习笔记
import java.util.Arrays; public class HelloArrayOp { public static void main(String[] args) { // TOD ...
- No1_5.字符串的基本操作_Java学习笔记
import java.text.DecimalFormat; import java.text.NumberFormat; import java.util.Locale; import java. ...
- No1_7.类和对象_Java学习笔记
一.面向对象的特点:a.封装:封装是面向对象的核心思想,将对象的属性和行为封装起来的载体就是类,类通常对客户隐藏其实现细节,这就是封装的思想: 保证了类内部数据的完整性,应用该类的用户不能轻易直接操纵 ...
- No2_5.类的高级特性_Java学习笔记_抽象类和成员内部类
一.抽象类1.所谓抽象类,只声明方法的存在而不去实现它的类:2.抽象类不能被实例化,即不能实现其对象:3.abstract class 类名{ 类体 }4.包含一个或多个抽象方法的类必须声明成抽象类: ...
- No2_3.接口继承多态_Java学习笔记_多态
***多态***1.多态性:通常使用方法的重载(Overloading)和重写(Overriding)实现类的多态:2.重写之所以具有多态性,是因为父类的方法在子类中被重写,方法名相同,实现功能不同. ...
- No2_1.接口继承多态_Java学习笔记_接口
接口.继承与多态 1.继承和多态是面向对象开发语言中的重要一个环节,使用得当,可以将整个程序的架构变得非常有弹性,减少代码冗余: 2.继承:复用定义好的类: 3.多态:可以动态调整对象的调用,降低对象 ...
- No1_2. 流程控制_java学习笔记
import java.util.Scanner; import java.lang.Math; public class HelloForWhile { /** * 文档注释,程序名称:HelloF ...
- yii2安装与初始化-Yii2学习笔记(一)
一.安装项目: 使用composer下载安装yii2 advanced安装包: composer create-project yiisoft/yii2-app-advanced advanced(自 ...
随机推荐
- Oracle11g R2学习系列 之八高级数据类型
所谓的高级数据类型,就是大数据类型,即BCNB(助记词:BC牛逼)+XML数据类型. B:blob,用来存储可变长度的二进制数据. C:clob,主要用来存储可变长度的字符型数据,也就是其他数据库中提 ...
- IOS 开发之文件管理
一.iOS中的沙盒机制 iOS应用程序只能对自己创建的文件系统读取文件,这个独立.封闭.安全的空间,叫做沙盒.它一般存放着程序包文件(可执行文件).图片.音频.视频.plist文件.sqlite数据库 ...
- Excel——使用VLOOKUP函数关联跨工作薄数据
实验环境 有两个工作簿,一个是<花名册>,另一个是<入离职表>,<花名册>上有所有员工的详细信息,包括员工的姓名.部门.出生日期等,<入离职表>上有离职 ...
- EF 一对一,一对多,多对多 Flunt API 配置
一对一 就拿后台用户权限相关的实体来说明吧,用户表,用户详细表,是一对一的关系: /// <summary> /// 用户信息类 /// </summary> publi ...
- 董事长、总裁与CEO的区别与实质
自从信息产业兴起以来,尤其是网络股泡沫产生以来,“CEO”在中国骤然成为一个流行词汇.总经理和总裁们纷纷改称CEO,这个缩写词比它的中译版“首席执行官”更简洁,在中国人心目中更有神圣感,于是便出现了今 ...
- KEIL里 Volatile的用法
volatile用于防止相关变量被优化. 例如对外部寄存器的读写.对有些外部设备的寄存器来说,读写操作可能都会引发一定硬件操作,但是如果不加volatile,编译器会把这些寄存器作为普通变量处理,例如 ...
- 《Programming WPF》翻译 第5章 8.我们进行到哪里了?
原文:<Programming WPF>翻译 第5章 8.我们进行到哪里了? 样式支持你定义一个策略来设置可视化元素的依赖属性.属性的设置可以被命名以及手动或者编程方式地通过名称应用,或者 ...
- .net 中的DllImport
只有做成COM的C++ dll才能直接引用.没有做成COM的就只能用P/Invoke(DllImport)或者C++/CLI那种.不过P/Invoke容易类型对不上,所以要是函数多,最好用C++/CL ...
- eclipse打开文件位置Open Explorer 插件
,OpenExplorer插件可以满足这个功能,可以到https://github.com/samsonw/OpenExplorer/downloads下载最新版本,将jar包放到eclipse的pl ...
- 06_Elasticsearch 批量获取mget
06_Elasticsearch 批量获取mget 现在有: http://192.168.32.81:9200/bank/bank_account/1 http://192.168.32.81:92 ...