Java-md-bk
continue关键字和break关键字在循环中的使用
continue: 出现在循环中表示结束本次循环继续下一次循环break:表示结束整个循环
public class Test01 {public static void main(String[] args) {/*** 测试continue关键字* 结束本次循环,继续下一次循环* 需求:打印1到100之间的偶数*/System.out.println("------------------------测试continue关键字-------------------------------");for (int i = 1; i <=100 ; i++) {if(i%2!=0){continue;}System.out.println(i);}/*** 测试break关键字* 用于结束整个循环* 打印1到100的数字;* 需求是:打印到50的时候结束打印*/System.out.println("------------------------测试break关键字-------------------------------");for (int i = 1; i <= 100 ; i++) {System.out.println(i);if(i>49){break;//结束整个循环}}/*** 小结:continue和break只能用于循环中,其它地方不能出现,两者的区别是:* continue用于结束本次循环,循环还要继续而break用于终止循环*/}
}
小结:
小结:continue和break只能用于循环中,其它地方不能出现,两者的区别是:continue用于结束本次循环,循环还要继续而break用于终止循环
循环的嵌套
所谓循环的嵌套就是循环里面含有另外一个循环,特点是:外层循环执行一次,内层循环执行多次(一般在实际的开发环境中,循环的嵌套建议不要超过3层,如果多于3层建议使用递归算法)
package com.tedu.cn;/*** 测试循环的嵌套*/
public class Test02 {public static void main(String[] args) {/*** 需求:在控制台打印99乘法表* 循环嵌套的一个典型的特点就是:外层循环执行一次,内层循环执行多次*//*** 要求: 控制台输出1到100每一个数的同时打赢100次鼠你最美*/for (int i = 1; i <=100 ; i++) {System.out.println(i);for (int j = 1; j <=5 ; j++) {System.out.println("鼠你最美");}}/*** 控制台打印99乘法表* 分析:99乘法表是由行和列组成,一共有9行和9列* 首先可以使用一个for循环来控制打印的行数,在打印每一行的过程中再来确定打印多行列* 具体打印多少列一定要理解清楚* 1 1* 2 2* 3 3* 可以总结出:打印到第几行的时候就需要打印多少列 ,假设使用 i表示行数 j表示列数,那么它们之间的关系应该为:* j=1 i<=j*/System.out.println("----------------------打印99乘法表----------------------------------");for (int i = 1; i <= 9 ; i++) { // i控制行for (int j = 1; j <= i ; j++) { //j控制列System.out.print(j+"x"+i+"="+i*j+"\t"); //不带换行输出(不带回车) \t表示一个制表符(相当于tab键)}System.out.println(); //换行}}
}
数组
数组的定义:
数组就是含有相同数据类型的元素的集合,数组类型的变量类型是一个引用数据类型的变量。
数组的申明:
第一种申明方式:
数据类型[] 数组名称 = new 数据类型[数组长度];
数据类型:基本数据类型和引用数组类型,注意[]不能省略
数组名称: 遵循变量的命名规则
new: 表示为数组分配内存空间的关键字
数组长度:数组元素的个数
第二种申明方式:申明的时候并且赋值
数据类型[] 数组名称={元素1,元素2。。。元素n};
数组的初始化
初始化规则
byte short int long float double char boolean0 0 0 0 0.0 0.0 "" false引用类型初始化为:null
数组的访问
数组的访问是按照下标索引的方式去访问的,下标索引按照0 开始一直到数组的长度-1的位置结束,可以使用数组名加上下标的形式访问数组,比如 arrs的数组 访问第一个元素是arrs[0] 第二个元素是arrs[1] 最后一个元素是arrs[长度-1]
数组的长度
数组的长度就是数组元素的个数,数组的长度专门有一个属性表示叫做 length
访问数组的长度可以通过数组名称.length进行访问。
数组的遍历
可以通过for循环遍历数组,由于数组的访问是从下标开始访问的(0开始),刚好和for
默认的初始值0吻合,所以可以使用for遍历数组的元素同时还可以初始化数组的元素
在这里插入代码片package com.tedu.cn;public class Test03 {public static void main(String[] args) {/*** 测试数组的申明*/int[] arrs = new int[10]; //申明长度为10的整型数组double[] doubles = new double[10]; //申明长度为10的double类型的数组byte[] bs = new byte[1024]; //申明长度为1kb大小的长度int[] numbers ={1,3,5,7,9}; //申明一个数组的同时为数组指定相应的元素/*** 数组的初始化规则:* 如果申明数组的时候不给数组的元素进行初始化,那么Java程序会按照如下规则初始化:* byte short int long 初始化为0* float double 类型初始化为0.0* char类型初始化为空字符 ''* boolean 类型初始化为 false*///访问numbers数组的第二个元素System.out.println(numbers[1]);System.out.println(arrs[1]);System.out.println(doubles[0]);/*** 如果申明数组的时候没有为数组的相应的元素指定初始化值,那么* 可以使用for循环去初始化数组的元素*/System.out.println("---------------------------arrs数组初始化元素之前--------------------------------------------");//length表示数组的长度 就是数组元素的个数for (int i = 0; i <arrs.length ; i++) {System.out.print(arrs[i]+"\t");}for (int i = 0; i <arrs.length ; i++) {arrs[i] = i+1;}System.out.println();System.out.println("---------------------------arrs数组初始化元素之后--------------------------------------------");for (int i = 0; i <arrs.length ; i++) {System.out.print(arrs[i]+"\t");}}
}
数组的两大API
arrayCopy方法
该方法是一个静态方法,由System类提供,用于将指定数组的某些元素拷贝到另外一个数组。
案例代码
public class Test5 {public static void main(String[] args) {int[] arrays = {1, 3, 5, 7, 9, 11};int[] arrays1 = new int[20];System.out.println("-------------------拷贝前--------------------------");for (int i = 0; i < arrays1.length; i++) {System.out.print(arrays1[i] + "\t");}System.arraycopy(arrays, 2, arrays1, 10, 4);System.out.println("-------------------拷贝后--------------------------");for (int i = 0; i < arrays1.length; i++) {System.out.print(arrays1[i] + "\t");}}
}
第二大API copyOf方法
该方法由Arrays类提供,主要实现一个数组的扩容。
注意:当扩容的长度大于元素组的时候则实现扩容,小于的时候实现缩容。
代码
public class Test6 {public static void main(String[] args) {int[] arrays = {1, 3, 5, 7, 9, 11};/*** 把array数组在原有的基础上扩容9个长度*/System.out.println("-------------------扩容前--------------------------");for (int i = 0; i < arrays.length; i++) {System.out.print(arrays[i] + "\t");}System.out.println();arrays = Arrays.copyOf(arrays,arrays.length+9);System.out.println("-------------------扩容后--------------------------");for (int i = 0; i < arrays.length; i++) {System.out.print(arrays[i] + "\t");}}
}
Java-md-bk相关推荐
- 京东2017实习生Java.md
大意为: 警察抓小偷.X为小偷,#为行人,数字代表警察可抓取的范围. 输入实例 9 X1X#2X#XX 注意边界条件,和字符型转换位数字 . import java.util.*; public cl ...
- java md密码加密_JavaSE_对密码进行MD5加密
package me.falcon.utils; import java.security.MessageDigest; import java.security.NoSuchAlgorithmExc ...
- B站 全套java面试(200道)问题MD(题目+答案)
Java面向对象有哪些特征,如何应用 面向对象编程是利用类和对象编程的一种思想.万物可归类,类是对于世界事物的高度抽象 ,不同的事物之间有不同的关系 ,一个类自身与外界的封装关系,一个父类和子类的 ...
- Java学习总结:4
面向对象 面向对象的程序设计具有封装性.继承性.多态性. 类的定义语法如下: class 类名称{数据类型 属性(变量);...public 返回值的数据类型 方法名称(参数1,参数2...){程序语 ...
- java线程死锁 cpu 100%_一文学会Java死锁和CPU 100% 问题的排查技巧
做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开 工欲善其事,必先利其器 00 本文简介 作为一名搞技术的程序猿或者是攻城狮,想必你应该是对下面这两个问题有所了解,说不定你在 ...
- Java:使用Fork / Join框架的Mergesort
此项的目的是显示一个Fork / Join RecursiveAction的简单示例,而不是过多地研究合并合并的可能优化方法,或者比使用Exkutor / Join Pool优于现有的基于Java 6 ...
- 用于快速排查Java的CPU性能问题(top us值过高)
转载于GIT路径 https://github.com/oldratlee/useful-scripts/blob/master/docs/java.md#beer-show-busy-java-th ...
- windows下利用批处理命令生成maven项目(java、javaWeb)
觉得用IDE生成maven项目会卡住,很慢.就用cmd写了个cmd批处理命令来生成maven项目.效果如下 生成项目导入idea后结构如下 批处理命令代码如下 @echo off::echo 请选择项 ...
- 大三,请问现在自学Java还来得及吗?
前言 如果还在为入门Java晚而发愁时间够不够,首先你是准备自学,那么我们可以看看现在网络上一些比较热门的Java全体系的学习需要化多长时间,先拿B站上做的比较好的黑马教程和尚硅谷举例: 2022黑马 ...
- 【面试题】Java 高级工程师面试刷题100题(二)
文章目录 如何理解 springboot 中的 starter? 什么是嵌入式服务器,为什么使用嵌入式服务器? mybatis 的优缺点有哪些? mybatis 和 hibernate 有什么区别? ...
最新文章
- 2016年蓝桥杯省赛题解
- JPA保存数据时报持久化对象异常:PersistenceException: org.hibernate.PersistentObjectException
- 技术分享 | 个性化推荐系统商业化的五大要素
- React Native的安装和初始化(android /ios)
- OTT交付如何超越传统广电交付,为用户带来高质量视频网络——对话Synamedia流媒体技术发展经理卢彦林...
- IBM 的大型机 z Systems 引入 Go 语言
- java基础知识——面向对象基本概念
- 3.运算符与表达式,控制流
- 2008哲思自由软件峰会
- TableView 截图
- Windows下基于IIS服务的SSL服务器的配置
- matlab模糊聚类分析画树状图,Matlab笔记模糊聚类分析原理及实现
- 安装python之后电脑变卡_【Python】如何让电脑变卡?
- GF(256)下的乘法
- 一位老中医的养生忠告
- 现代公关无需遮遮掩掩,明火执仗开干就行
- PerfEnforce Demonstration: Data Analytics with Performance Guarantees
- http/2与http/1的区别
- 千里马-modulo
- Elasticsearch mapping与analysis