java代码块基础入门.docx
- 文档编号:9948470
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:16
- 大小:17.99KB
java代码块基础入门.docx
《java代码块基础入门.docx》由会员分享,可在线阅读,更多相关《java代码块基础入门.docx(16页珍藏版)》请在冰豆网上搜索。
java代码块基础入门
1对数组进行操作
/*
我想要对数组进行操作
在同一个文件夹下,类定义在两个文件中和定义在一个文件中其实一样的。
*/
classArrayDemo{
publicstaticvoidmain(String[]args){
//定义数组
int[]arr={28,55,37,46,19};
//需求:
遍历数组
/*
for(intx=0;x if(x==arr.length-1){ System.out.println(arr[x]); }else{ System.out.print(arr[x]+","); } } */ //如果我有多个数组都要进行遍历,那么,代码的重复度就很高 //如何改进呢? 用方法改进 //调用 //静态方法 //printArray(arr); //非静态方法 //ArrayDemoad=newArrayDemo(); //ad.printArray(arr); //测试类的作用: 创建其他类的对象,调用其他类的功能。 //而我们现在的操作是跟数组相关的,所以,你应该把这些操作定义到数组操作类中 //定义一个数组的操作类 //有了数组操作类之后的调用 //ArrayToolat=newArrayTool(); //at.printArray(arr); //方法改进为静态后,就可以直接通过类名调用 ArrayTool.printArray(arr); } /* publicstaticvoidprintArray(int[]arr){ for(intx=0;x if(x==arr.length-1){ System.out.println(arr[x]); }else{ System.out.print(arr[x]+","); } } } */ //假设该方法不是静态的 /* publicvoidprintArray(int[]arr){ for(intx=0;x if(x==arr.length-1){ System.out.println(arr[x]); }else{ System.out.print(arr[x]+","); } } } */ } 2构造方法私有 classArrayTool{ //把构造方法私有,外界就不能在创建对象了 privateArrayTool(){} publicstaticvoidprintArray(int[]arr){ for(intx=0;x if(x==arr.length-1){ System.out.println(arr[x]); }else{ System.out.print(arr[x]+","); } } } } 3制作说明书 /* 我想要对数组进行操作 如何制作一个说明书呢? A: 写一个工具类 B: 对这个类加入文档注释 怎么加呢? 加些什么东西呢? C: 用工具解析文档注释 javadoc工具 D: 格式 javadoc-d目录-author-versionArrayTool.java 目录: 就可以写一个文件夹的路径 制作帮助文档出错: 找不到可以文档化的公共或受保护的类: 告诉我们类的权限不够 */ classArrayDemo{ publicstaticvoidmain(String[]args){ //定义数组 int[]arr={28,55,37,46,19}; //遍历 ArrayTool.printArray(arr); //获取最值 intmax=ArrayTool.getMax(arr); System.out.println("max: "+max); //获取55的索引值 intindex=ArrayTool.getIndex(arr,55); System.out.println("index: "+index); } } 4对数组进行操作的工具类 /** *这是针对数组进行操作的工具类 *@author刘意 *@versionV.10 */ publicclassArrayTool{ //把构造方法私有,外界就不能在创建对象了 /** *这是私有构造 */ privateArrayTool(){} /** *这是遍历数组的方法,遍历后的格式是: [元素1,元素2,元素3,...] *@paramarr这是要被遍历的数组 */ publicstaticvoidprintArray(int[]arr){ System.out.print("["); for(intx=0;x if(x==arr.length-1){ System.out.println(arr[x]+"]"); }else{ System.out.print(arr[x]+","); } } } /** *这是获取数组中最大值的方法 *@paramarr这是要获取最大值的数组 *@return返回数组中的最大值 */ publicstaticintgetMax(int[]arr){ intmax=arr[0]; for(intx=1;x if(arr[x]>max){ max=arr[x]; } } returnmax; } /** *获取指定元素在数组中第一次出现的索引,如果元素不存在,就返回-1 *@paramarr被查找的数组 *@paramvalue要查找的元素 *@return返回元素在数组中的索引,如果不存在,返回-1 */ publicstaticintgetIndex(int[]arr,intvalue){ intindex=-1; for(intx=0;x if(arr[x]==value){ index=x; break; } } returnindex; } } 5如何使用帮助文档 1: 打开帮助文档 2: 点击显示,找到索引,看到输入框 3: 知道你要找谁? 以Scanner举例 4: 在输入框里面输入Scanner,然后回车 5: 看包 java.lang包下的类不需要导入,其他的全部需要导入。 要导入: java.util.Scanner 6: 再简单的看看类的解释和说明,别忘了看看该类的版本 7: 看类的结构 成员变量字段摘要 构造方法构造方法摘要 成员方法方法摘要 8: 学习构造方法 A: 有构造方法就创建对象 B: 没有构造方法成员可能都是静态的 9: 看成员方法 A: 左边 是否静态: 如果静态,可以通过类名调用 返回值类型: 人家返回什么,你就用什么接收。 B: 右边 看方法名: 方法名称不要写错 参数列表: 人家要什么,你就给什么;人家要几个,你就给几个 /* 猜数字小游戏(数据在1-100之间) 分析: A: 程序产生一个随机数。 (被猜的) B: 键盘录入数据。 (你猜的) C: 把你猜的和被猜的进行比较 a: 大了 b: 小了 c: 猜中了 D: 给出多次猜的机会,猜中就结束。 while()循环,猜中就break */ importjava.util.Scanner; classGuessNumber{ publicstaticvoidmain(String[]args){ //程序产生一个随机数。 (被猜的) intnumber=(int)(Math.random()*100)+1; //System.out.println(number); //给出多次猜的机会,猜中就结束。 while(true){ //键盘录入数据。 (你猜的) Scannersc=newScanner(System.in); System.out.println("请输入你要猜的数据(1-100): "); intguessNumber=sc.nextInt(); //把你猜的和被猜的进行比较 if(guessNumber>number){ System.out.println("你猜的数据"+guessNumber+"大了"); }elseif(guessNumber System.out.println("你猜的数据"+guessNumber+"小了"); }else{ System.out.println("恭喜你,猜中了"); break; } } } } 6math类 /* Math: 类包含用于执行基本数学运算的方法 由于Math类在java.lang包下,所以不需要导包。 特点: 没有构造方法,因为它的成员全部是静态的。 掌握一个方法: 获取随机数 publicstaticdoublerandom(): 返回带正号的double值,该值大于等于0.0且小于1.0。 */ classMathDemo{ publicstaticvoidmain(String[]args){ //获取一个随机数 //doubled=Math.random(); //System.out.println(d); //需求: 我要获取一个1-100之间的随机数,肿么办? for(intx=0;x<100;x++){ intnumber=(int)(Math.random()*100)+1; System.out.println(number); } } } 7代码块 /* 代码块: 在Java中,使用{}括起来的代码被称为代码块。 根据其位置和声明的不同,可以分为 局部代码块: 局部位置,用于限定变量的生命周期。 构造代码块: 在类中的成员位置,用{}括起来的代码。 每次调用构造方法执行前,都会先执行构造代码块。 作用: 可以把多个构造方法中的共同代码放到一起,对对象进行初始化。 静态代码块: 在类中的成员位置,用{}括起来的代码,只不过它用static修饰了。 作用: 一般是对类进行初始化。 面试题? 静态代码块,构造代码块,构造方法的执行顺序? 静态代码块--构造代码块--构造方法 静态代码块: 只执行一次 构造代码块: 每次调用构造方法都执行 */ classCode{ static{ inta=1000; System.out.println(a); } //构造代码块 { intx=100; System.out.println(x); } //构造方法 publicCode(){ System.out.println("code"); } //构造方法 publicCode(inta){ System.out.println("code"); } //构造代码块 { inty=200; System.out.println(y); } //静态代码块 static{ intb=2000; System.out.println(b); } } classCodeDemo{ publicstaticvoidmain(String[]args){ //局部代码块 { intx=10; System.out.println(x); } //找不到符号 //System.out.println(x); { inty=20; System.out.println(y); } System.out.println("---------------"); Codec=newCode(); System.out.println("---------------"); Codec2=newCode(); System.out.println("---------------"); Codec3=newCode (1); } } 8构造代码块 /* 写程序的执行结果。 林青霞都60了,我很伤心 我是main方法 Student静态代码块 Student构造代码块 Student构造方法 Student构造代码块 Student构造方法 */ classStudent{ static{ System.out.println("Student静态代码块"); } { System.out.println("Student构造代码块"); } publicStudent(){ System.out.println("Student构造方法"); } } classStudentDemo{ static{ System.out.println("林青霞都60了,我很伤心"); } publicstaticvoidmain(String[]args){ System.out.println("我是main方法"); Students1=newStudent(); Students2=newStudent(); } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 代码 基础 入门