Java数组的应用:案例:杨辉三角,三维数组,字符串数组

简介: //import java.util.Arrays; //包含Arrays//import java.util.Random;public class HelloWorld { public static void main(String[] args){ // Scanner s = new Scanner(System.
//import java.util.Arrays; //包含Arrays
//import java.util.Random;

public class HelloWorld {
	public static void main(String[] args){
	//	Scanner s = new Scanner(System.in);
	//	System.out.println("请输入一个数字");
	//	int num = s.nextInt();
		YanghuiSanjiao(); //杨辉三角
		three_array();    //三维数组
		String();		  //字符串数组
	}
	public static void YanghuiSanjiao()
	{
		//打印杨辉三角的前8行
		/*
		 * 1
		 * 1 1
		 * 1 2 1
		 * 1 3 3 1    a[3][1] = a[2][1] + a[20] ====> a[i][j] = a[i-1][j-1] + a[i-1][j]
		 * 1 4 5 4 1
		 * 1 5 10 10 5 1 
		 */
			int [][] a = new int[8][8];
			//先初始化为1
			for(int i = 0 ; i < a.length ; i++){
				for(int j = 0 ; j < a[i].length ; j++){
					a[i][j] = 1 ;
				}
			}
			//杨辉三角核心算法
			//从第三行开始满足以下规律
			for(int i = 2 ; i < a.length ; i++)
			{
				for(int j = 1 ; j < i ;j++)
				{
					a[i][j] = a[i-1][j-1] + a[i-1][j] ;
				}
			}
			for(int i = 0 ; i < a.length ; i++){
				for(int j = 0 ; j <=i ; j++){
					System.out.print(a[i][j] + "\t");
				}
				System.out.println();
			}
	}
	//三维数组
	public static void three_array()
	{
		int [][][]a = {
				{
					{1,2,3},
					{1,2,3},
				},
				{
					{1,2,3},
					{1,2,3},
				},
				{
					{1,2,3},
					{1,2,3},
				},
		};
		//三维数组的长度就是二维数组的个数
		System.out.println(a.length);
		//a[1]--->三维数组中的第二个二维数组
		//ep:
		//打印的结果是第一个二维数组中的第二个一维数组中的第三个元素的值
		System.out.println(a[0][1][2]);
	}
	//字符串数组
	public static void String()
	{
		char a = 'a'; //占用两个字节
		//字符串是由多个字符组成的
		String name = "YANGYUANXIN" ; //声明一个字符串,用String关键字
		//字符串数组
		String[] names = {"SY","SAD","ASD","VTE","CH"};
		//字符串二维数组,和上面的是一样的,只不过是字符串类型
		String[][] teamNames = {
				{"zhangsan","ls","wangwu"},
				{"zhasd","sada","sdasd"},
		};
		for(int i = 0 ; i < names.length ; i++){
			System.out.println(names[i]);
		}	
	}

}

目录
相关文章
|
1月前
|
存储 Java 索引
Java快速入门之数组、方法
### Java快速入门之数组与方法简介 #### 一、数组 数组是一种容器,用于存储同种数据类型的多个值。定义数组时需指定数据类型,如`int[]`只能存储整数。数组的初始化分为静态和动态两种: - **静态初始化**:直接指定元素,系统自动计算长度,如`int[] arr = {1, 2, 3};` - **动态初始化**:手动指定长度,系统给定默认值,如`int[] arr = new int[3];` 数组访问通过索引完成,索引从0开始,最大索引为`数组.length - 1`。遍历数组常用`for`循环。常见操作包括求和、找最值、统计特定条件元素等。
|
1月前
|
存储 Java 索引
Java基础(六):数组
Java基础(六):数组
30 10
Java基础(六):数组
|
29天前
|
存储 Java C++
Java数组:静态初始化与动态初始化详解
本文介绍了Java中数组的定义、特点及初始化方式。
62 12
|
29天前
|
Java 编译器 开发者
Java中的this关键字详解:深入理解与应用
本文深入解析了Java中`this`关键字的多种用法
122 9
|
29天前
|
Java 应用服务中间件 API
【潜意识Java】javaee中的SpringBoot在Java 开发中的应用与详细分析
本文介绍了 Spring Boot 的核心概念和使用场景,并通过一个实战项目演示了如何构建一个简单的 RESTful API。
41 5
|
29天前
|
人工智能 自然语言处理 搜索推荐
【潜意识Java】了解并详细分析Java与AIGC的结合应用和使用方式
本文介绍了如何将Java与AIGC(人工智能生成内容)技术结合,实现智能文本生成。
58 5
|
29天前
|
SQL Java 数据库连接
【潜意识Java】深入理解MyBatis,从基础到高级的深度细节应用
本文详细介绍了MyBatis,一个轻量级的Java持久化框架。内容涵盖MyBatis的基本概念、配置与环境搭建、基础操作(如创建实体类、Mapper接口及映射文件)以及CRUD操作的实现。此外,还深入探讨了高级特性,包括动态SQL和缓存机制。通过代码示例,帮助开发者更好地掌握MyBatis的使用技巧,提升数据库操作效率。总结部分强调了MyBatis的优势及其在实际开发中的应用价值。
32 1
|
2月前
|
安全 算法 Java
Java CAS原理和应用场景大揭秘:你掌握了吗?
CAS(Compare and Swap)是一种乐观锁机制,通过硬件指令实现原子操作,确保多线程环境下对共享变量的安全访问。它避免了传统互斥锁的性能开销和线程阻塞问题。CAS操作包含三个步骤:获取期望值、比较当前值与期望值是否相等、若相等则更新为新值。CAS广泛应用于高并发场景,如数据库事务、分布式锁、无锁数据结构等,但需注意ABA问题。Java中常用`java.util.concurrent.atomic`包下的类支持CAS操作。
83 2
|
2月前
|
监控 Java 数据库连接
Java线程管理:守护线程与用户线程的区分与应用
在Java多线程编程中,线程可以分为守护线程(Daemon Thread)和用户线程(User Thread)。这两种线程在行为和用途上有着明显的区别,了解它们的差异对于编写高效、稳定的并发程序至关重要。
64 2
|
3天前
|
Java 程序员 开发者
Java社招面试题:一个线程运行时发生异常会怎样?
大家好,我是小米。今天分享一个经典的 Java 面试题:线程运行时发生异常,程序会怎样处理?此问题考察 Java 线程和异常处理机制的理解。线程发生异常,默认会导致线程终止,但可以通过 try-catch 捕获并处理,避免影响其他线程。未捕获的异常可通过 Thread.UncaughtExceptionHandler 处理。线程池中的异常会被自动处理,不影响任务执行。希望这篇文章能帮助你深入理解 Java 线程异常处理机制,为面试做好准备。如果你觉得有帮助,欢迎收藏、转发!
39 14

热门文章

最新文章