JAVASE课程 第一章 第三讲程序控制与数组

作用:

1、可以了解程序的三种结构

2、可以了解一维数组,二维数组,多维数组,不规则数组

3、可以了解移位运算符和随机数类,控制台输入

1  程序的三种结构

顺序结构  自上而下的逐行执行代码

选择语句  根据逻辑判断代码的执行顺序

循环语句  根据逻辑重复执行某个代码块

2  选择语句

1) if语句

1/  直接输出

2/  if...else

3/  if...else if ... else if ...

4/  if的三目运算符  如 (a>b)?a/b:a*b

2) switch语句

开关语句: 只能是byte,int,char,short 枚举类型

语句格式:  switch(变量)

{

case 变量1: 语句块1 ; break;

case 变量2: 语句块2 ; break;

default: 语句;

}

3 循环语句

1) while语句

语句特点: 先判断,后执行循环

2) do ... while 语句

语句特点:  先至少执行一次循环,后判断

3) for循环

4 关键字

break: 跳出循环体,直接截止循环.

continue: 中止本次循环,直接下次循环.

5 数组

1) 数组申明与初始化

a 动态表达式  int[] 数组名 = new int[数组个数]

b 静态初始化  int[] 数组名 = new int[]{数组值1,数组值1...}

int[] 数组名 = {数组值1,数组值1...}

2) 数组下标(也称数组索引)

a  数组下标是从0开始的

b  不要访问不存在的数组元素,挤超过数组元素的方位

3) 数组的长度

a  运用   数组名.length 来取得数组长度

b  代码,length遍历

4) 数组的默认与初始化

a  定义了数组,却没有为数组赋值,在这种情况下,系统会默认给数组初始化

b  注意:  byte short int  float dobuble 默认值为0,布尔型默认值是flase

5) 转换

a  将字符串转换为字符

String str = "strValue";

char charVal = str.charAt(0);

b  将字符串转换为字符型数组

String str = "strValue";

char[] charArray = str.toCharArray();

6) 二维数组

a 显示初始化

1/ int[][] results = {{1,2,3},{1,2,3}};  //{{第一行初值},{第二行初值},{第三行初值}...}

2/ int[][] results = new int[][]{{1,2,3},{1,2,3}};

b 应用

1/  矩阵互转 => 将一个二维数组的行和列的元素互转,存储到另一个二维数组中.

2/  杨辉三角形 => 它的斜边都是有数字1组成,而其余的数则是他肩上两个数之和.

c 理解

1/ 一位数组: 当成几何中的线性图形.

2/ 二维数组: 相当于一个表格

7) 多维数组

数组的维度就是类型后面的中括号对数.

多维数组元素的个数 = 每个二维上大小的乘积

8) 不规则数组与规则数组

规则数组: 呈线性分布,每行元素个数相同

不规则数组: 每行元素个数不相同

a 不规则数组定义: 由于多维数组在内存中不是呈线性分配的,所以多维数组可以以不规则的形式存在.

b 如 1/ int[][] results = {{1,2,3},{5,7},{0}}

2/ int[][] x = new int[5][]

0行有4个元素 => x[0] = new int[4]  1行有3个元素 =>  x[1] = new int[3] ...

6 移位运算符

>> 向右移一次,相当于除以2(向右移动两位,右边补1)

<< 向左移一次,相当于乘以2(向左移动两位,左边补0)

>>> 向右移两位,左边补0 (没有<<<运算符)

7 小应用

a 产生随机数

int num = new java.util.Random().nextInt(10);  //随机产生1-10的随机数

b 从键盘输入,出现一个输入方框

String obj_str = javax.swing.JOptionPane.showInputDialog("输入数字:");

int num_int = Integer.parseInt(obj_str);

Double num_dou = Double.parseDouble(obj_str);

时间: 2024-11-05 14:38:41

JAVASE课程 第一章 第三讲程序控制与数组的相关文章

JAVASE课程 第一章 第四讲方法,数组,java新特性

作用: 1.可以了解方法的申明和使用 2.可以了解数组的引用传递 3.可以了解java新特性对数组的支持 一 方法的申明和使用 1 方法的定义 方法就是一段可重复调用的代码块. 2 方法的定义格式 a public static 返回值类型 方法名称(类型参数1,类型参数2...){ 方法主体: 程序语句 [return 表达式;] } b 在本节定义的方法,因为其可以直接使用主方法调用,所以将方法声明处加上public static两个关键字 c 注意 1/ 如果返回值类型上写的是void,则

翻译brent ozar的sqlserver dba训练课程——第一章:建立数据库服务器清单

在公司里,走进销售副总裁的办公室,询问他手下有多少销售人员.不,我的意思是你并不要那么做,他们会问你销售工具为什么那么慢. 其实我的意思是,如果你能走进他的办公室问他这个问题.我敢打赌,他会马上回答,不会有片刻犹豫.或者你走进ceo的办公室问他有多少员工,或者问cfo年度预算是多少,他们肯定会迅速回答. 因此,我的观点是,当你负责某个事物时,你需要清楚的知道你所负责的是那些. 制作一个表格清单 让我们开始制作一个表格清单.在表格的顶部,我们列出以下列: sqlserver版本(2005.2008

Python全栈课程-第一章练习题-多用户登录(list和file的使用)

基础需求: 让用户输入用户名密码 认证成功后显示欢迎信息 输错三次后退出程序 升级需求: 可以支持多个用户登录 (提示,通过列表存多个账户信息) 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里) lock_file = open("lock.txt", "r", encoding="utf-8")if lock_file.read() == "locked": print

《程序员面试指南》第一章 栈和队列 构造数组的MaxTree

题目 给出一个无重复元素的数组,构造此数组的MaxTree, java代码 /** * @Description: 构造数组的MaxTree * @Author: lizhouwei * @CreateDate: 2018/4/5 22:16 * @Modify by: * @ModifyDate: */ public class Chapter1_8 { public Node getMaxTree(int[] arr) { if (arr == null) { return null; }

(linux shell)第一章--小试牛刀(下)

文章来源: (linux shell)第一章--小试牛刀(下) 1.6 数组和关联数组 1.6.1 预备知识 Bash同一时候支持普通数组和关联数组.普通数组仅仅能使用整数作为数组索引,而关联数组能够使用字符串作为数组索引.关联数组在非常多操作中相当实用. 1.6.2 实战演练 定义数组的方法有非常多,能够在单行中使用一列值来定义一个数组: array_var=(1,2,3,4,5,6)   #这些值将会存储在以0为起始索引的连续位置上 另外.还能够将数组定义成一组索引-值: array_var

Java学习记录第一章

学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言--->高级语言(面向过程的语言和面向对象的语言)总而言之就是从人类比较难识别的字符串向人类自然语言靠近使代码的可读性越来越高. Java的发展过程:1991年Sun公司为了抢占市场先机,成立了一个称为Green的项目小组,帕特里克.詹姆斯·高斯林.麦克·舍林丹和其他几个工程师一起组成的工作小组在加利福尼亚州门洛帕

大道至简第一章阅读感想

作者在本书一开始的序当中写到了这本大道至简在出版时遇到的一些问题,比如,作者这本书写的很少很薄,而出版社认为应该写厚,这样出版出去才可以好卖.但是这违背了作者一开始创作这本书的愿意,想写一本“阐明软件工程的思想核心”的书.这本书要很容易就读明白,还要很容易就想通,还要很容易就知道:工程其实很简单,只是大家把它做复杂了.不过后来好在这本书终于还是出了电子版的,才终于可以面世. 作者在本书的第一章就极其简明的写出了编程的根本:顺序.分支和循环,这就是编程的根本,并且用愚公移山这样的大家都知道的例子来

K&amp;R 学习笔记 第一章

今天开始学习C语言,为了之后的游戏开发学习做好基础,其实在大一的时候学校有C语言的课程,学的马马虎虎,教学也比较浅显,感觉并不能学习到C语言的精髓.在经过多人推荐下,入手了K&R ,看了第一章之后,才发现的确值得这么多人称赞. 其实大多数书的第一章都是差不多的,以Hello World 引出本书学习的知识体系的顺序,有趣的是之后的练习,也是要花一番功夫的. 1.4 提到了幻数,所谓幻数,就是在程序中直接使用的数字.C语言的传统方式是使用#define行来对付幻数.C语言预处理程序是一个强有力的工

机电传动控制课程第一周学习笔记

机电传动课程第一周学习笔记 本周的学习内容主要是第一章绪论和第二章机电传动系统的动力学基础,结合课程学习和预习复习回顾内容如下: 1.绪论:学习了机电传动控制目的与任务.发展历程和我们该如何学习这门课程. 2.机电传动系统的动力学基础: a.运动方程式:对于单一拖动系统或者多拖动系统,在分析时一般都折算到一根轴(电动机轴)上,折算的基本原则是,折算前的多轴系统同折算后的单轴系统在能量关系上或功率关系上保持不变.而对于单 走拖动系统的运动方程式如下. b.判断TM/TL的符号:主要概括为三条:规定