JAVA基础学习第五天!

精华笔记:

1.循环结构:

-for结构:应用率高、与次数相关的循环


1 )语法:

// 1 2 3

for (要素1;要素2;要素3){

语句块/循环体---------------反复执行的语句 4

2 )执行过程:

1243243243243243...2

2.三种循环结构如何选择:

-先看循环是否与次数相关:

-若相关————————————-直接上for

-若无关,再看第1要素与第3相互的代码是否相同:

-若相同——————————–直接上do…while

-若不同——————————–直接上while

3.break:跳出循环

continue:跳过循环体中剩余语句而进入下一次循环

4.嵌套循环:

-循环中套循环,常常多行多列时使用,一般外层控制行,内层控制列

-执行规则:外层循环走一次,内层循环走所有次

-建议:嵌套层数越少越好,能用一层就不用两层,能用两层就不用三层

-break只能跳出当前一层循环

5.数组:

-是一种数据类型(引用类型)

-相同数据类型元素的集合

-定义:

-初始化:——————初始化的是数组中的元素

-访问:————–访问的是数组中的元素

-通过(数组名.length)可以获取数组的长度(元素个数)

-通过下标/索引来访问数组中的元素,下标从0开始,最大到(数组的长度-1)

-遍历/迭代:从头到尾挨个走一遍

笔记:

1.循环结构:

-for结构:应用率高、与次数相关的循环


1 )语法:

// 1 2 3

for (要素1;要素2;要素3){

语句块/循环体---------------反复执行的语句 4

2 )执行过程:

1243243243243243...2


for (int times =0 ;times<5 ;times++){

System .out .println ("行动是成功的阶梯");

//特殊的: for中的循环变量num的作用域---仅在当前for中

for (int num =1 ;num

System .out .println (num+"*9="+num*9 );

for (int num =1 ;num

System .out .println (num+"*9="+num*9 );

执行过程:

num=1 true 1*9=9

num=3 true 3*9=27

num=5 true 5*9=45

num=7 true 7*9=63

num=9 true 9*9=81

num=11 false for循环结束

//演示for的特殊语法格式:

int num =1 ;

for (;num

System .out .println (num+"*9="+num*9 );

for (int num =1 ;num

System .out .println (num+"*9="+num*9 );

num++;

for (;;){ //没有条件的循环就是一个死循环

System .out .println ("我爱Java");

for (int i =1 ,j=5 ;i

i=1,j=5

i=3,j=3

i=5,j=1

i=7,j=-1


//随机加法运算器

package day05;

import java.util.Scanner;

//随机加法运算器

public class Addition {

public static void main (String [] args ) {

Scanner scan = new Scanner (System .in );

int score = 0 ; //总分

for (int i =1 ;i

int a = (int )(Math .random ()*100 ); //加数a--0到99的随机数

int b = (int )(Math .random ()*100 ); //加数b--0到99的随机数

int result = a+b; //存正确答案

System .out .println ("("+i+")"+a+"+"+b+"=?"); //1)出题

System .out .println ("算吧!");

int answer = scan .nextInt (); //2)答题

if (answer==-1 ){ //3)判题

break ;

if (answer==result){

System .out .println ("答对了");

score += 10 ; //答对1题,加10分

}else {

System .out .println ("答错了");

System .out .println ("总分为:"+score);

2.三种循环结构如何选择:

-先看循环是否与次数相关:

-若相关————————————-直接上for

-若无关,再看第1要素与第3相互的代码是否相同:

-若相同——————————–直接上do…while

-若不同——————————–直接上while

3.break:跳出循环


for (int num =1 ;num

if (num==4 ){ //在某种特定条件下,提前结束循环

break ; //跳出循环

System .out .println (num+"*9="+num*9 );

执行过程:

num=1 1*9=9

num=2 2*9=18

num=3 3*9=27

num=4

continue:跳过循环体中剩余语句而进入下一次循环


//输出9的乘法表,只要不能被3整除

for (int num =1 ;num

if (num%3 !=0 ){

System .out .println (num+"*9="+num*9 );

//输出9的乘法表,跳过能被3整除的

for (int num =1 ;num

if (num%3 ==0 ){

continue ; //跳过循环体中剩余语句而进入下一次循环

System .out .println (num+"*9="+num*9 );

num=1 1*9=9

num=2 2*9=18

num=3

num=4 4*9=36

num=5 5*9=45

num=6

num=7 7*9=63

num=8 8*9=72

num=9

num=10 false

4.嵌套循环:

-循环中套循环,常常多行多列时使用,一般外层控制行,内层控制列

-执行规则:外层循环走一次,内层循环走所有次

-建议:嵌套层数越少越好,能用一层就不用两层,能用两层就不用三层

-break只能跳出当前一层循环


//九九乘法表

public class MultiTable {

public static void main (String [] args ) {

for (int num =1 ;num

for (int i =1 ;i

System .out .print (i+"*"+num+"="+i*num+"\t ");

System .out .println (); //换行

执行过程:

num=3

i=1 1*3=3

i=2 2*3=6

i=3 3*3=9

i=4 false

num=2

i=1 1*2=2

i=2 2*2=4

i=3 false

num=1

i=1 1*1=1

i=2 false

5.数组:

-是一种数据类型(引用类型)

-相同数据类型元素的集合

-定义:


//声明整型数组arr,包含10个元素,每个元素都是int型,默认值为0

int [] arr = new int [10 ];

-初始化:——————初始化的是数组中的元素


int [] arr1 = new int [3 ]; //0,0,0

int [] arr2 = {2 ,5 ,8 }; //2,5,8

int [] arr3 = new int []{2 ,5 ,8 }; //2,5,8

int [] arr4 ;

//arr4 = {2,5,8}; //编译错误,此方式只能声明同时初始化

arr4 = new int []{2 ,5 ,8 }; //正确

-访问:————–访问的是数组中的元素

-通过(数组名.length)可以获取数组的长度(元素个数)


int [] arr = new int [3 ];

System .out .println (arr .length ); //3,输出数组的长度

-通过下标/索引来访问数组中的元素,下标从0开始,最大到(数组的长度-1)


int [] arr = new int [3 ];

System .out .println (arr[0 ]); //0,输出第1个元素的值

arr[0 ] = 100 ; //给第1个元素赋值为100

arr[1 ] = 200 ; //给第2个元素赋值为200

arr[2 ] = 300 ; //给第3个元素赋值为300

arr[3 ] = 400 ; //运行时会发生数组下标越界异常

System .out .println (arr[arr .length -1 ]); //输出最后一个元素的值

-遍历/迭代:从头到尾挨个走一遍


int [] arr = new int [10 ];

for (int i =0 ;i<arr .length ;i++){ //遍历arr数组

arr[i] = (int )(Math .random ()*100 ); //给每个元素赋值为0到99的之间的随机数

System .out .println (arr[i]); //输出每个元素的值

补充:

1.变量的重名问题:

-作用域重叠时,变量不能同名

2.\t:水平制表位,固定占8位

3.数组元素的默认值:


byte ,short ,int ,long ,char ----------------0

float ,double ----------------------------0.0

boolean ---------------------------------false

4.异常:

-ArrayIndexOutOfBoundsException:数组下标越界异常

-数组下标为0到(数组长度-1),若超出这个范围则发生数组下标越界异常

Original: https://www.cnblogs.com/Bafanqwq/p/16542054.html
Author: 八幡qwq
Title: JAVA基础学习第五天!

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/684218/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 初等数论学习笔记 I:同余相关

    2021.12.6:重构文章,删去线性筛部分,修改部分表述。 2022.3.15:重构文章。 2022.3.24:新增威尔逊定理,素数在阶乘和组合数中的幂次,阶与原根,高次剩余和卢…

    技术杂谈 2023年6月21日
    086
  • b/s跟c/s http跟rpc协议区别

    我想起了我刚工作的时候,第一次接触RPC协议,当时就很懵, 我HTTP协议用的好好的,为什么还要用RPC协议? 于是就到网上去搜。 不少解释显得非常官方,我相信大家在各种平台上也都…

    技术杂谈 2023年5月31日
    085
  • SOLR查询匹配关键词的方式

    如果在字段后直接写关键词,solr对条件关键词分词后,各分词之间按照OR的关系进行匹配 如果查询条件关键词用半角双引号括叫起来,则分词间用AND关系进行匹配 尽管使用双引号括起来,…

    技术杂谈 2023年5月31日
    083
  • kube-scheduler的调度上下文

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年7月24日
    077
  • MySQL InnoDB缓存

    1. 背景 对于各种用户数据、索引数据等各种数据都是需要持久化存储到磁盘,然后以”页”为单位进行读写。 相对于直接读写缓存,磁盘IO的成本相当高昂。 对于读…

    技术杂谈 2023年6月21日
    092
  • Webpack的使用

    全局安装Webpack(尽量在项目目录中执行cmd命令) npm install -g webpack webpack-cli 在项目目录的js目录中创建几个js文件(之间的关联任…

    技术杂谈 2023年6月21日
    056
  • mysql 8.0.28 查询语句执行顺序实测结果

    TL;NRs 根据实测结果,MySQL8.0.28 中 SQL 语句的执行顺序为: (7) SELECT (5) DISTINCT (1) FROM (3) JOIN (2/4) …

    技术杂谈 2023年7月25日
    069
  • 杂想闲思录——你的努力付出可能毫无价值可言!

    公司的清洁阿姨每隔一段时间就会换一个。个人上班一般来的比较早,所以经常会碰到清洁阿姨在办公室打扫卫生:有些阿姨工作比较敷衍,草草了事,完全是那种拿多少薪水干多少活的类型,完全看不到…

    技术杂谈 2023年5月31日
    093
  • 有没有方法指导IT顶层规划和实施?

    很多人学习了TOGAF之后,发现内容太多,感觉无从下手。想了一下,给大家做几张学习海报吧,这样可以抓住学习和应用要点。 点击下载PDF源文件打印出来学习。 Original: ht…

    技术杂谈 2023年5月31日
    084
  • 实战模拟│企业微信机器人实时报错预警

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年7月11日
    070
  • Golang仿云盘项目-2.2文件查询信息接口

    本文来自博客园,作者:Jayvee,转载请注明原文链接:https://www.cnblogs.com/cenjw/p/16459817.html 目录结构 E:\goproj\F…

    技术杂谈 2023年7月24日
    069
  • 统计本周每天的数据

    MySQL5.7 目前有两个思路: 穷举本周每天的日期,left join 数据表 指定统计的时间范围、按照时间间隔进行统计(类似ES桶聚合date_histogram) 思路一(…

    技术杂谈 2023年7月25日
    067
  • 部署-centos安装docker

    docker简单介绍 docker是一门容器虚拟化的技术。它能够实现环境+软件一起打包的效果,因此它能避免因为环境不一样而导致的各种问题,大大的提高了软件的部署效率。而且在dock…

    技术杂谈 2023年7月23日
    077
  • HTTP中application/x-www-form-urlencoded字符说明

    一、概述在学习ajax的时候,如果用post请求,需要设置如下代码。 ajax.setRequestHeader(“content-type”,&#8221…

    技术杂谈 2023年5月30日
    084
  • H3C 无线交换机和FIT AP的典型连接

    posted @2019-09-23 20:56 樊伟胜 阅读(1010 ) 评论() 编辑 Original: https://www.cnblogs.com/fanweishe…

    技术杂谈 2023年5月30日
    099
  • 20212218林思凡Python技能树及CSDNMarkDown编辑器测评

    课程:《Python程序设计》 班级:2122 姓名:林思凡 学号:20212218 实验教师:王志强 实验日期:2022年4月17日 必修/选修:公选课 已在CSDN上发表文章,…

    技术杂谈 2023年7月24日
    052
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球