Java 选择

一、 引言
   选择语句要用到条件。条件就是布尔表达式。

二、Boolean数据类型
    1、比较运算符,Java提供六种比较运算符,用于比较数值,也可以对字符进行比较。

运算符名称结果
<小于true or false
<=小于等于true or false
>大于true or false
>=大于等于true or false
==等于true or false
!=不等于true or false
    2、布尔变量
        具有布尔值的变量称为布尔变量。
    3、boolean数据类型
        boolean数据类型用于声明布尔型变量。
    4、布尔直接量
        true和false。

三、一个简单的数学学习工具

四、If语句
    Java有几种类型的选择语句:单向if语句、双向if语句、嵌套if语句、switch语句和条件表达式。
    单向if语句
    语法:
    If(布尔表达式) {
        语句(组);
    }
    流程图:
    布尔表达式->真->语句(组)->结束;
                  ->假      ->结束;

五、猜生日
    bk位为整数1,就出现在setk中。

六、双向if语句
    语法:
    if(布尔表达式) {
        布尔表达式为真时执行的语句(组);
    }
    else {
        布尔表达式为假时执行的语句(组);
    }
    流程图:
        布尔表达式->真->条件为真时执行的语句(组)->结束;
                  ->假->条件为假时执行的语句(组)->结束;

七、嵌套的if语句
    if或if…else语句中可以是其他的if或if…else语句。外层if语句里的内层if语句称为嵌套的。
    内层if语句还可以包含其他if语句,事实上对嵌套的深度没有限制。

八、选择语句中的常见错误
    1、忘记必要的括号
        如果块中只有一条语句,就可以忽略花括号。但是,当需要用花括号将多条语句括在一起时,
        忘记花括号是一个常见的程序设计错误。
    2、在if行出现错误的分号
        它既不是编译错误也不是运行错误,而是一个逻辑错误。等价于一个带空块的代码。
        当使用下行块风格时,经常会出现这个错误。所以使用行尾块风格可帮助防止出现此类错误。
    3、对布尔值的冗余测试
    4、悬空else出现歧义

九、一个改进的数学学习工具
    Math.random(),返回一个双精度的随机值d且满足0.0<=d<1.0。

十、计算身体质量指数

十一、计算税款

十二、逻辑运算符

运算符名称说明
!逻辑非
&&逻辑与
||逻辑或
^异或逻辑异或
    1、警告:
    数学角度:
    1 <= numberOfDaysInAMonth <= 31
    Java角度:
    (1 <= numberOfDaysInAMonth) && (numberOfDaysInAMonth <= 31)
    2、注意:
        A、一个布尔型值变量不能转换为其他类型的值,其他类型的值也不能转换位布尔类型值。
        B、德模佛定理:
            !(condition1 && condition2) 和 !condition1 || !condition2 是一样的。
            !(condition1 || condition2) 和 !condition1 && !condition2 是一样的。
        C、&&又称为条件与运算符或短路与运算符,而||称为条件或运算符或短路或运算符。

十三、判断闰年
    isLeapYear = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)

十四、彩票

十五、Switch语句
    完整语法:
    Switch(witch表达式) {
        case 值1:语句(组)1;
            break; 
        case 值2:语句(组)2;
            break; 
        …
        case 值N:语句(组)Nv;
            break; 
        default:默认情况下执行的语句(组);
    }
    switch语句遵从下述规则:
        1)switch表达式必须能计算出一个char、byte、short或int型值,并且必须总是要用括号扩住。
        2)value1,…,valueNv必须与switch表达式的值具有相同的数据类型,且是常量表达式。
        3)当switch表达式的值与case语句的值相匹配时,执行从该case开始的语句,
            直到遇到一个break语句或到达该switch语句的末端。
        4)关键字break是可选的。break语句会立即终止整个switch语句。
        5)default是可选的,用来指定没有一个指定的case与switch表达式匹配时应该采取的操作。
        6)case语句是顺序检测的。

十六、条件表达式
    语法:
    boolean-expression ? expression1 : expression2;(布尔表达式?表达式1:表达式2)
    三目运算符

十七、格式化控制台输出
    printf方法的语法:
    System.out.printf(fromat, item1,item2,…,itemk);
    这里的format是指一个子串和格式化标示符组成的字符串。
    格式标示符指定每个条目应该如何显示,条目可以是数值、字符、字符串或布尔值。
    一个标示符是以百分号(%)开头的转换码
    常用的标示符:

标示符输出
%b布尔值
%c字符
%d十进浮点数制整数
%f浮点数
%e标准科学计数法形式的数
%s字符串
    exp:
    int count = 1;
    doubouel amount = 1.0;
    System.out.printf(‘%d%f’,count,amount);
    可以在标示符中指定宽度和精度。
    指定宽度和精度的例子

举例输出
%5c输出字符并在这个字符条目前面加4个空格
%6b输出boolean值,在false前面加一个空格,在true前面加两个空格。
%5d输出整数条目,宽度至少为5。如果该条目的数字位数小于5,就在前面加空格。
    如果该条目的位数大于5,则自动增加宽度。
%10.2f输出的浮点数宽度至少为10,包括小数点和小数点后两位。这样,给小数点前分配了7位。
    如果该项小数点的位数小于7,就在数字前面加空格。如果该项小数点前的位数大于7,则自动增加宽度。
%10.2e输出的浮点条目的宽度至少为10,包括小数点,小数点后两位和指数部分。
    如果该科学计数法显示的数字小于10,就给数前加空格。
%12s输出的字符串宽度至少为12。如果该字符串条目小于12个字符,就在该条目前加空格。
    如果该字符串条目多于12个字符,则自动增加宽度。
    默认情况下,输出是右对齐的。可以在标示符中放一个负号(-),表明该条目在特定区域中的输出是左对齐的。

十八、 运算符的优先级和结合方向
    运算符的优先级

优先级运算符
最高级var++和 var-- (后置运算符)
 +, - (一元加号和一元减号), ++var and --var (前置运算符)
 (type) (类型转换)
 ! (非)
 *, /, % (乘法、除法和求余运算)
 +, - (二元加法和减法)
 <, <=, >, >= (比较运算符)
 ==, != (相等运算符)
 ^ (异或)
 && (条件与 )
 || (条件或)
最低级=, +=, -=, *=, /=, %= (赋值运算符)
    结合方向
    如果相邻运算符的优先级相同,则结合方向决定它们的执行顺序。
    除了赋值运算符之外,所有的二元运算符都是左结合的。
    赋值运算符是右结合的。

十九、(GUI)确认对话框
    下面的语句创建一个确认对话框:
    int option = JOptionPane.showConfirmDialog(null,”Continue”);
    当点击按钮时,这个方法会返回一个选择值。点击Yes按钮返回的值是JOptionPane.YES_OPTION(0),
        点击No按钮返回的值是JOptionPane.NO_OPTION(1),
        点击Cancel按钮返回的值是JOptionPane.CANCEL_OPTION(2)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值