day03      

大纲:

运算符

分支结构

1.运算符:
  1)算术运算符:+-*/%,++,--
  2)关系运算符:>,<,>=,<=,==,!= boolean
  3)逻辑运算符:&&,||,! boolean
  4)赋值运算符:=,+=,-=,*=,/=,%=
  5)字符串连接运算符:+
  6)三目/条件运算符:boolean?数1:数2

2.分支结构:
  1)if结构:1条路
  2)if...else结构:2条路
  3)if...else if结构:多条路
  4)switch...case结构:多条路
    优点:效率高、结构清晰
    缺点:整数、相等
    break:跳出switch

任何复杂的程序逻辑都可以通过三种结构来实现:
1)顺序结构:从上往下逐行执行,每句必走
2)分支结构:有条件的执行,并非每句必走
3)循环结构:

闰年的判断公式:
1.能被4整除并且不能被100整除
或者
2.能被400整除
例:(year%4==0 && year%100!=0) || year%400==0

个人整理代码示例:

package day01;
//三目运算
public class Test01 {
public static void main(String[] args) {
int a = -3;
String r = a>0?"正数":(a == 0?"0":"负数");
System.out.println(r);//结果为负数
}
}

课上代码示例:

package day03;
//运算符的演示
public class OperDemo {
public static void main(String[] args) {
/*
* 6.三目/条件运算符:
* 1)语法:
* boolean?数1:数2
* 2)执行过程:
* 计算boolean的值:
* 若为true,则整个表达式的结果为数1
* 若为false,则整个表达式的结果为数2
*/
/*
int a=55,b=8;
int max = a>b?a:b;
System.out.println("max="+max);
*/ /*
* 5.字符串连接运算符:
* 1)+:
* 1.1)若两边都是数字,则做加法运算
* 1.2)若两边出现字符串,则做字符串连接
*/
/*
System.out.println(100+200+""+300); //"300300"
System.out.println(100+200+300+""); //"600"
System.out.println(""+100+200+300); //"100200300" int age = 37;
System.out.println("age="); //age=
System.out.println(age); //37
System.out.println("age="+age);
System.out.println("我的年龄是:"+age);
System.out.println("我今年"+age+"岁了");
*/ /*
* 4.赋值运算符:
* 1)简单赋值运算符:=
* 2)扩展赋值运算符:+=,-=,*=,/=,%=
*/
/*
int a = 5;
a += 10; //相当于a=a+10
System.out.println(a); //15
a *= 2; //相当于a=a*2
System.out.println(a); //30
a /= 6; //相当于a=a/6
System.out.println(a); //5
*/ /*
* 3.逻辑运算符:
* 1)&&:短路与(并且),两边都为真则为真,见false则false
* 若第1个数为false则发生短路(后面的不执行了)
* ||:短路或(或者),有一边为真则为真,见true则true
* 若第1个数为true则发生短路(后面的不执行了)
* !:逻辑非(取反),非真则假,非假则真
* 2)逻辑运算是建立在关系运算的基础之上的,
* 逻辑运算的结果也是boolean型
*/ /*
int a=5,b=10,c=5;
boolean b5 = a<b || c++>2;
System.out.println(b5); //true
System.out.println(c); //5,发生短路了 boolean b4 = a>b && c++>2;
System.out.println(b4); //false
System.out.println(c); //5,发生短路了
*/ /*
boolean b3 = !(a>b);
System.out.println(b3); //!false=true
System.out.println(!(a<b)); //!true=false System.out.println(a>=b || c<b); //false||true=true
System.out.println(c<=b || a>b); //true||false=true
System.out.println(a!=b || b>c); //true||true=true
System.out.println(b==c || c>b); //false||false=false boolean b2 = a>=b && c<b;
System.out.println(b2); //false&&true=false
System.out.println(c<=b && a>b); //true&&false=false
System.out.println(b==c && c>b); //false&&false=false
System.out.println(a!=b && b>c); //true&&true=true
*/ /*
* 2.关系运算符:
* 1)>(大于),<(小于)
* >=(大于或等于),<=(小于或等于)
* ==(等于),!=(不等于)
* 2)关系运算的结果为boolean型,
* 关系成立则为true,关系不成立则为false
*/
/*
int a=5,b=10,c=5;
boolean b1 = a>b;
System.out.println(b1); //false
System.out.println(c<b); //true
System.out.println(b>=a); //true
System.out.println(c<=a); //true
System.out.println(a==c); //true
System.out.println(a!=c); //false
*/ /*
* 1.算术运算符:+,-,*,/,%,++,--
* 1)%:取模/取余,余数为0即为整除
* 2)++/--:自增1/自减1,可在变量前也可在变量后
* 2.1)单独使用时,在前在后无差别
* 2.2)被使用时,在前在后有差别:
* a++的值为a
* ++a的值为a+1
*/
/*
int a=5,b=5;
//1)输出a--的值5 2)a自减1变为4
System.out.println(a--); //5
System.out.println(a); //4
//1)输出--b的值4 2)b自减1变为4
System.out.println(--b); //4
System.out.println(b); //4
*/ /*
int a=5,b=5;
int c=a++; //1)将a++的值5赋值给c 2)a自增1变为6
int d=++b; //2)将++b的值6赋值给d 2)b自增1变为6
System.out.println(a); //6
System.out.println(b); //6
System.out.println(c); //5
System.out.println(d); //6
*/ /*
int a=5,b=5;
a++; //相当于a=a+1
++b; //相当于b=b+1
System.out.println(a); //6
System.out.println(b); //6
*/ /*
System.out.println(5%2); //1,商2余1
System.out.println(6%2); //0,商3余0--整除
System.out.println(2%6); //2,商0余2
System.out.println(8.675%2); //0.675
*/
}
}
package day03;
//分支结构的练习
public class IfDemo {
public static void main(String[] args) {
int num = 4;
switch(num){ //byte,short,char,int
case 1: //if(num==1)
System.out.println(111);
break;
case 2: //以此为入口
System.out.println(222);
break; //跳出switch
case 3:
System.out.println(333);
break;
default: //所有case都未匹配时执行
System.out.println(666);
} package day03;
import java.util.Scanner;
//闰年的判断
public class LeapYear {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入年份:");
int year = scan.nextInt(); boolean flag = (year%4==0 && year%100!=0)
||
year%400==0;
String msg = flag ? year+"是闰年" : year+"不是闰年";
System.out.println(msg);
}
} package day03;
import java.util.Scanner;
//成绩等级判断
public class ScoreLevel {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入成绩:");
int score = scan.nextInt(); if(score<0 || score>100){
System.out.println("成绩不合法");
}else if(score>=90){ //score>=0 && score<=100
System.out.println("A-优秀");
}else if(score>=80){
System.out.println("B-良好");
}else if(score>=60){
System.out.println("C-中等");
}else{
System.out.println("D-不及格");
} }
} package day03;
import java.util.Scanner;
//年龄判断程序
public class AgeRange {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入年龄:");
int age = scan.nextInt(); System.out.println(age>=18 && age<=50);
}
} package day03;
import java.util.Scanner;
//柜台收银程序
public class Cashier {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入单价:");
double unitPrice = scan.nextDouble();
System.out.println("请输入数量:");
double amount = scan.nextDouble();
System.out.println("请输入金额:");
double money = scan.nextDouble(); //计算总价(单价*数量)
double totalPrice = unitPrice*amount;
if(totalPrice>=500){ //满500
totalPrice*=0.8; //打8折
} if(money>=totalPrice){ //够
double change = money-totalPrice; //计算找零(给的钱-总价)
System.out.println("总价为:"+totalPrice+",找零为:"+change);
}else{ //不够
System.out.println("ERROR!钱不够");
} }
} package day03;
import java.util.Scanner;
//命令解析程序
public class CommandBySwitch {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请选择功能: 1.显示全部记录 2.查询登录记录 0.退出");
int command = scan.nextInt(); switch(command){
case 1:
System.out.println("显示全部记录");
break;
case 2:
System.out.println("查询登录记录");
break;
case 0:
System.out.println("欢迎下次再来");
break;
default:
System.out.println("输入错误");
} }
}

day03-java的更多相关文章

  1. day03<Java语言基础+>

    Java语言基础(逻辑运算符的基本用法) Java语言基础(逻辑运算符&&和&的区别) Java语言基础(位运算符的基本用法1) Java语言基础(位异或运算符的特点及面试题) ...

  2. day03 Java基础

    1.面试题 (1)short s=1;s=s+1; (2)short s=1;s+=1; 上面两行代码有没有问题,如果有,哪里有问题? 答:第一个有问题,s+1是int类型的值,赋值给short的s, ...

  3. java基础学习笔记 第二周(面向对象)

    Day01 什么是抽象数据类型:将不同数据类型的集合组成的一个整体,我们称为抽象数据类型 类就是一个抽象数据类型 成员变量:类中的数据类型就是成员变量(属性) 方法:类中的一些行为就是方法 面向过程( ...

  4. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  5. Java基础毕向东day03

    Java基础毕向东day03 1.变量 2.条件结构 3.循环结构,for while,和几种特殊的情况. 4.函数重载

  6. 2017-2018-1 JAVA实验站 冲刺 day03

    2017-2018-1 JAVA实验站 冲刺 day03 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 写博客.进行工作总结 100% 齐力锋 部分按钮图片.对按钮图片进行ps 100 ...

  7. Java学习day03

    day03 课堂笔记 1.数据类型 2.总结第二章到目前为止所学内容: * 标识符 * 关键字 * 字面值 * 变量 成员变量如果没有赋值,系统会自动赋值,而局部变量不手动赋值,则会编译不通过. * ...

  8. Java历程-初学篇 Day03扫描仪与类型转换

    一,扫描仪 步骤1,使用扫描仪方法 步骤2,导个包 步骤三,使用 注意事项:严格区分大小写 二,类型转换 1,自动类型转换 当将一个数值范围小的类型赋给一个数值范围大的数值型变量,java在编译过程中 ...

  9. java入门day03

    控制流程 一:   if else   /    switch 1. 随机数的产生:导入import java.lang.Math; num=Math.random()  -->[0,1); [ ...

  10. Java之路---Day03

    2019-10-17-21:18:33 方法 定义格式: public static void 方法名称() { 方法体 } 完整格式: 修饰符  返回值类型  方法名称(参数类型  参数名称,... ...

随机推荐

  1. Tomcat设置默认启动项目及Java Web工程设置默认启动页面

    Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下: 1.打开tomcat的安装根目录,找到Tom ...

  2. hdu Largest Rectangle in a Histogram

    这道题目是一道动态规划的题目,动态规划的点不在面积上,而在每个矩形可左右扩展的坐标上.找出每个矩形最左边和最右边比它高的矩形的下标,最后求面积即可: #include"stdio.h&quo ...

  3. WinEdt选项卡配置

    不小心把选项卡(标签页.多tab)整没了.搜了一下: 在工具栏点击右键可以发现配置.

  4. discuz怎么根据连接知道调用的是什么模板页面

    其实不怎么难,基本都可以看出discuz是怎么样调用模板页面的 这个是论坛的帖子的列表页,看到url就可以看出是forum目录下的forumdisplay这个模板,forumdisplay.html这 ...

  5. hrbust oj 1526+2028 树状数组

    冒泡排序中 如果一个数的后面的某个数和这个数不符合排序规则 那么这个数就会在未来的某次冒泡中与那个数进行交换 这里用到了 树状数组求逆序数的办法来做 需要注意的是2028并不可以改完数组大小后直接套1 ...

  6. Tesseract 对验证码的识别原理和实现步骤

    一. Steps: 学习图片库--->处理图片(初步处理)--->校正.学习图片 二. Tesseract: 1. 采集图片库(一般每个出现的字符出现20次左右识别效果比较好),根据图片特 ...

  7. PDO 学习与使用 ( 二 ) PDO 数据提取 和 预处理语句

    以数据库 msg 为例,说明 PDO 的数据提取.预处理语句: mysql> show tables;+---------------+| Tables_in_msg |+----------- ...

  8. Andrew Ng机器学习公开课笔记 -- Mixtures of Gaussians and the EM algorithm

    网易公开课,第12,13课 notes,7a, 7b,8 从这章开始,介绍无监督的算法 对于无监督,当然首先想到k means, 最典型也最简单,有需要直接看7a的讲义   Mixtures of G ...

  9. 搭建一个Flv视频播放服务器

    搭建一个Flv视频播放服务器 热度 15已有 11511 次阅读2009-11-2 22:27 |关键词:服务器 视频 flv 播放 文档 错漏 经过一天的努力,查了好多资料,终于搞定了Flv视频服务 ...

  10. 区分总结innerHeight与clientHeight、innerWidth与clientWidth、scrollLeft与pageXOffset等属性

    window对象: (1)innerHeight属性:窗口中文档显示区域的高度,不包括菜单栏.工具栏等部分.该属性可读可写. IE不支持该属性,IE中body元素的clientHeight属性与该属性 ...