do while循环
语法:
do{
//循环体
}while(条件表达式);

注:它是先执行循环体,后再判断的循环结构。

如:
int i = 0;
do{
System.out.println("i = "+i);
i++;
}while(i < 10);

---
do while一般用在“交互式”的界面循环中。
案例:

--------------------------
break语句与continue语句
break可以用在:
1). switch语句中, 表示退出某个case块
2). 循环中, 表示 打破最接近于自己所在的那一层循环。

continue语句用在:
1). 循环中, 表示结束本轮循环[最接近于自己所在的那一层循环],开始下一轮

如:
for(int i=1;i<=9;i++){
if(i % 3 == 0){
//break; //i=1,i=2
continue; //i=1,2,4,5,7,8
}
System.out.println("i = "+i);
}
------------
课堂作业:
1. 设计一个程序,提示用户输入一个整数,并计算出这个整数的阶乘。

2. 设计一个程序,输出200以内所有的素数[质数]

3. 设计一个程序,打印出1000以内所有的完备数[完美数]
完备数是指某个数刚好等于它的所有约数之和[不含自己]
如:6 = 1+2+3

--------------------------------------------------------------
格式化输出 [printf 方法]
方法:
//普通输出
System.out.println(String output);
System.out.print(String output);
//格式化输出
System.out.printf(String ouput,Object... args);

如:
int i = 5;
int j = 17;
//
System.out.println("i = "+i+",j = "+j);
//格式化输出
System.out.printf("i = %d,j = %d\n",i,j);

==
占位符的语法:
%[argument_index$][flag][width][.precision]conversion
常用的conversion有:
d 代表 整数
f 代表 浮点数
b 代表 布尔型
s 代表 字符或字符串
t 代表 日期或时间
...

width 代表这个占位符所占用的位宽。

.precision 代表的是小数位。

flag 代表 标记位
- 表示左对齐。
...

--
案例:

====================
方法[method]
定义:是一小块功能的集合,每个方法都有它的输入与输出,所以,一个
好的方法是一个相对独立的、完整的小功能。

方法的组成部份:[语法]
[修饰符] 返回类型 方法名([参数列表]) [throws 异常类型] {
//方法体
}
--
修饰符 [modifier]
1.访问控制修饰符
所有类 子类 同包 本身
public Y Y Y Y
protected N Y Y Y
[default] N N Y Y
private N N N Y

2. 特殊修饰符
static 静态
abstract 抽象
final 最终
synchronized 同步
native 本地
...
方法可以添加多个修饰符,修饰符之间没有顺序。
所以:
public static void main(String[] args){ }

static public void main(Stirng[] args){ }

---
返回类型 【return type】
所有的合法的数据类型都可以做为方法的返回类型。
除此以外,还有一个特殊类型: void 也可以做为方法的返回类型。

如果方法的返回类型被设计成 void,则表示此方法没有返回值,也就是
说,在方法体中,可以没有 return 语句。
如果方法的返回类型不是void,则表示此方法一定有返回值,也就是说,
在方法中,一定要有 return 语句。

思考: 在设计方法时,如何确定方法的返回类型?

--
方法名 【method name】
就是一个方法的名字代号。
方法名应该能够表达出此方法的主要功能。

--
参数列表 【parameter list】
方法的参数,也叫形参,其实本质上就是 局部变量[local variable]

参数语法:
数据类型 形参名

多个参数之间使用逗号隔开.

注:形参【形式上的参数】是没有实际值的。它只有类型。
只有当此方法被调用[invoke]时,形参才会被"实参"赋值.

如:
public class Hehe{
public int add(int a, int b){
int c = a + b;
return c;
}
public static void main(String[] args){
Hehe h = new Hehe();
int result = h.add(5,19); //ok
}
}
//方法的调用:
1).通过 类名.方法名 来调用, 要求此方法必需使用 static 修饰
如:
double d = Math.random(); //类名.方法名

2). 通过 对象.方法名 来调用,此方法没有用 static 修饰
如:
Scanner sc = new Scanner(System.in); //创建对象
int i = sc.nextInt(); //对象.方法名
--------------

例:
完成作业2,以方法的思路来完成:
设计第一个方法,用来判断给定的整数是否是素数
public boolean isPrime(int n){
//...
}
再设计一个方法,负责打印输出指定范围内的素数
public void printPrime(int max){
//....
...
if(isPrime(i)){ // 直接调用

}
}
//最后,在main 方法中调用
public static void main(String[] args){
XXX x = new XXX();
int a = 200;
x.printPrime(a);
}

-------------
作业.
完成猜数字游戏

Java笔记4-do while循环,break,修饰符,方法的调用的更多相关文章

  1. Java学习笔记(4)----Public,Protected,Package,Private修饰符可见性

    Java修饰符类型(public,protected,private,friendly) public的类.类属变量及方法,包内及包外的任何类均可以访问:protected的类.类属变量及方法,包内的 ...

  2. Java学习笔记:04面向对象-内部类_访问修饰符_final

    04面向对象-内部类/访问修饰符/final 1.static的介绍 static:关键字,静态的 static的作用是用来修饰类中的成员 2.访问一个类中的某一个成员变量 方法一: _1.创建对象 ...

  3. Java基础笔记(7)----三个修饰符

    abstract抽象 方法 抽象方法:abstract修饰的方法,只有声明 而没有方法的实现(连{}都没有). 语法:修饰符 返回值类型 方法名(形参列表); 注意:抽象方法 必须定义在 抽象类中. ...

  4. java学习笔记12(final ,static修饰符)

    final: 意思是最终的,是一个修饰符,有时候一个功能类被开发好了,不想被子类重写就用final定义, 用final修饰的最终数据成员:如果一个类的数据成员用final修饰符修饰,则这个数据成员就被 ...

  5. 【Java并发编程】:volatile变量修饰符

    volatile用处说明     在JDK1.2之前,java的内存模型实现总是从主存(即共享内存)读取变量,是不需要进行特别的注意的.而随着JVM的成熟和优化,现在在多线程环境下volatile关键 ...

  6. Java基础之数据类型、内存、修饰符、代码块

    Java 数据类型 基本数据类型 数值:int.short.long 字符:char 布尔:boolean 引用数据类型 class(类) interface(接口) 数组[] 所占字节数(1 byt ...

  7. 简单的描述Java中的构造函数,及访问修饰符

    作为一个Java 初学者,对Java的理解可能有些片面,甚至有些错误的理解,对于观看此处的您,希望您选择性观看!!! 访问修饰符: 1.常用访问修饰符: public 共有的 private 私有的 ...

  8. Java知多少(19)访问修饰符(访问控制符)

    Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: 1 public class className { 2 // body of class 3 } 4 pr ...

  9. java的访问控制(包、访问修饰符、修饰符)

    一.     java的类包 编写好一个源程序后,首先要执行javac命令进行编译源文件,并生成与源文件同名后缀为“.class”的字节码文件(类文件),该类文件与源文件默认在同一个目录中.该类文件是 ...

随机推荐

  1. CSS3之尖角标签

    如图所示,Tag标签的制作通常使用背景图片,现在用CSS3代码就能实现尖角效果(需浏览器支持CSS3属性). 运用CSS3样式实现尖角标签,只需要写简单的HTML结构和CSS样式. <p> ...

  2. python collections defaultdict

    class_counts  = defaultdict(int) 一.关于defaultdict 在Python里面有一个模块collections,解释是数据类型容器模块.这里面有一个collect ...

  3. 如何浏览并管理 Outlook 邮件?

    当你的邮件多起来的时候你就不得不考虑这个问题了,如何处理各种邮件? 如何浏览并管理 Outlook 邮件? 待续~

  4. IntelliJ IDEA 设置代码提示或自动补全的快捷键

    IntelliJ IDEA 设置代码提示或自动补全的快捷键   点击 文件菜单(File) –> 点击 设置(Settings- Ctrl+Alt+S), –> 打开设置对话框. 在左侧的 ...

  5. ImportError: No module named MySQLdb

    ImportError: No module named MySQLdb 该错误是源于我们没有安装Python连接MySQL所需的MySQLdb库而引起. python3.5下的解决方法ubuntu系 ...

  6. jquery iframe自适应高度[转]

      经典代码 iFrame 自适应高度,在IE6/IE7/IE8/Firefox/Opera/Chrome/Safari通过测试. 很古老的方法: <iframe src="../In ...

  7. python中requests

    #发送无参数的get请求import requests def get_html(url): res = requests.get(url) return res.text #发送无参数的post请求 ...

  8. AngularJS: 'Template for directive must have exactly one root element' when using 'th' tag in directive template

    .controller('HomeController', function($scope,$location) { $scope.userName='天下大势,为我所控!'; $scope.clkU ...

  9. apanda安装

  10. BZOJ2095 [Poi2010]Bridges

    首先二分答案...然后这张图变成了有一些有向边,有一些无向边 然后就是混合图欧拉回路的判断 我们知道如果是有向图,它存在欧拉回路的等价条件是所有点的出度等于入度 对于混合图...先不管有向边,把无向边 ...