第二天:数据类型和常用运算

基本语言元素
关键字:程序中有特殊含义和通途的单词
标识符:给变量、方法、类等起的名字

    - 字母、数字、下划线和$,数字不能开头- 大小写敏感(区分大小写)- 不能跟关键字相同,不能包含特殊字符- 见名知意,驼峰标识

运算符:指定某种运算的特殊符号

    - 算术运算符:+、-、*、/、%- 赋值运算符:=、+=、-=、*=、/=、%=、……- 关系运算符:>、<、>=、<=、==、!=- 短路运算符:&&、||- 条件运算符:? :- 自增自减运算符:++、--- 类型转换运算符:()- 其他运算符:逻辑运算符、位运算符、移位运算符、下标运算符、成员运算符等

字面量:程序中不变的部分

1.引用型字面量:null
2.布尔型字面量:true和false
3.字符型字面量:‘q’,‘\n’,‘\t’,‘\ddd’[*]
4.整型字面量:29,035,0x1d
5.实型字面量:3.14,.25e2,5.5f
6.字符串字面量:“Hello, world”
7.类字面量:String.class,int.class

分隔符:空格、花括号、方括号、圆括号、分号、逗号、冒号等

  • 数据类型

    • 基本类型(primitive type)

      • 整型:byte、short、int、long
      • 实型:float、double
      • 布尔型:boolean
      • 字符型:char
    • 枚举类型(enumeration type):用于定义符号常量。

    • 引用类型(reference type):除了基本数据类型和枚举类型,剩下的类型都是引用类型。

变量和常量

- 变量:计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。在指令式语言中,变量存储的值通常是可变的,因此称之为变量。
- 常量:在程序运行时,不会被修改的量。Java中可以使用final关键字定义常量。

练习1:输入两个数找出其中较大的那个数。

package com.lovoinfo;import java.util.Scanner;public class FindMax {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入两个数: ");int a = sc.nextInt();int b = sc.nextInt();/*if(a >= b) {System.out.println(a);}else {System.out.println(b);}*/System.out.println(a >= b? a : b);sc.close();}
}

练习2:输入身高(cm)和体重(kg)判断身材是否正常。判断标准"身高-110>=体重"认为是正常的。

package com.lovoinfo;import java.util.Scanner;public class AreYouFat {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入你的名字: ");String name = sc.nextLine();System.out.print("请输入你的身高: ");int height = sc.nextInt();System.out.print("请输入你的体重: ");int weight = sc.nextInt();/*if(height - 110 >= weight) {System.out.println(name + "的身材正常!");}else {System.out.println(name + "是个胖子!");}*/System.out.println(name +(height - 100 >= weight? "身材正常!" : "是个胖子!"));sc.close();}
}

练习3:输入一个年份,判断是不是闰年。

package com.lovoinfo;import java.util.Scanner;public class IsLeapYear {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入一个年份: ");int year = sc.nextInt();if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {System.out.println(year + "是闰年");}else {System.out.println(year + "不是闰年");}sc.close();}
}

练习4:输入圆的半径,计算圆的周长和面积。

package com.lovoinfo;import java.util.Scanner;public class CalcCircle {private static final double PI = 3.14;public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入圆的半径: ");double radius = sc.nextDouble();double area = PI * radius * radius;double circumference = 2 * PI * radius;System.out.println("周长: " + circumference);System.out.println("面积: " + area);sc.close();}
}

练习5:输入三个整数,按从小到大的顺序输出。

package com.lovo;import java.util.Scanner;public class SortThreeNumber {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入三个数: ");int a = sc.nextInt();int b = sc.nextInt();int c = sc.nextInt();if(a > b) {int temp = a;a = b;b = temp;}if(a > c) {int temp = a;a = c;c = temp;}if(b > c) {int temp = b;b = c;c = temp;}System.out.printf("%d\t%d\t%d\n", a, b, c);sc.close();}
}

作业:输入三个整数,输出其中最大的数。

第三天:程序逻辑-1(分支和循环)

  1. 程序的结构
  2. 流程图
  3. 分支结构
  4. 循环结构
  5. 多重循环结构

练习1:分段函数求值。

f(x)=⎧⎩⎨3x+5x−15x−3(x<−1)(−1≤x≤1)(x>1)

f(x)=\begin{cases} 3x+5 & \text (x \lt -1) \\ x-1 & \text (-1 \le x \le 1) \\ 5x-3 & \text (x \gt 1) \end{cases}

package com.lovoinfo;import java.util.Scanner;public class Fx {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("x = ");double x = sc.nextDouble();double y;if(x < -1) {y = 3 * x + 5;}else if(x <= 1) {y = x - 1;}else {y = 5 * x - 3;}System.out.println("f(x) = " + y);sc.close();}
}

练习2:个人所得税计算。在我国,个人所得税的起征点是3500元,计算公式是:
个人所得税 = (工资收入 - 五险一金 - 个税起征点) * 税率 - 速算扣除数
其中,税率和速算扣除数可以查下表得到:

级数 含税级距 税率 速算扣除数
1 不超过1500元的 3 0
2 超过1500元至4500元的部分 10 105
3 超过4500元至9000元的部分 20 555
4 超过9000元至35000元的部分 25 1005
5 超过35000元至55000元的部分 30 2755
6 超过55000元至80000元的部分 35 5505
7 超过80000元的部分 45 13505
package com.lovoinfo;import java.util.Scanner;public class Tax {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入工资: ¥");double salary = sc.nextDouble();double add = salary - salary * 0.08 - 3500;double tax;if(add <= 0) {tax = 0;}else if(add <= 1500) {tax = add * 0.03;}else if(add <= 4500) {tax = add * 0.1 - 105;}else if(add <= 9000) {tax = add * 0.2 - 555;}else if(add <= 35000) {tax = add * 0.25 - 1005;}else if(add <= 55000) {tax = add * 0.3 - 2755;}else if(add <= 80000) {tax = add * 0.35 - 5505;}else {tax = add * 0.45 - 13505;}System.out.printf("需要缴纳的个人所得税: ¥%.2f元\n", tax);sc.close();}
}

作业:输入一个百分制的成绩,将其转换成对应的等级,规则如下表所示:

成绩 等级
90-100 A
80-89 B
60-79 C
<60 D

程序

package Java23;
import java.util.Scanner;
public class CheJi {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入分数");int X = sc.nextInt();if(X<60)System.out.println("D");else if(X<80)System.out.println("C");else if(X<90)System.out.println("B");else System.out.println("A");sc.close();}}

练习4:输入成绩等级输出对应的评语,规则如下表所示:

成绩等级 评语
A 该生成绩优异,学习踏实认真
B 该生积极上进,学习态度较好
C 该生学习努力,成绩有待提高
D 该生成绩稳定,动手能力很强

package com.lovoinfo;

import java.util.Scanner;

public class CommentSystem {

    public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入成绩等级: ");char level = sc.next().charAt(0);switch(level) {case 'a':case 'A':System.out.println("该生成绩优异,学习踏实认真");break;case 'b':case 'B':System.out.println("该生积极上进,学习态度较好");break;case 'c':case 'C':System.out.println("该生学习努力,成绩有待提高");break;case 'd':case 'D':System.out.println("该生成绩稳定,动手能力很强");break;default:System.out.println("瓜西西,输错了!");}sc.close();}
}

练习5:将一颗色子掷60000次,统计每一面出现的次数。

package com.lovoinfo;public class ThrowDie {public static void main(String[] args) {int f1 = 0, f2 = 0, f3 = 0, f4 = 0, f5 = 0, f6 = 0;for(int i = 1; i <= 60000; i++) {int face = (int)(Math.random() * 6 + 1);switch(face) {case 1: f1++; break;case 2: f2++; break;case 3: f3++; break;case 4: f4++; break;case 5: f5++; break;case 6: f6++; break;}}System.out.println("1点出现了" + f1 + "次");System.out.println("2点出现了" + f2 + "次");System.out.println("3点出现了" + f3 + "次");System.out.println("4点出现了" + f4 + "次");System.out.println("5点出现了" + f5 + "次");System.out.println("6点出现了" + f6 + "次");}
}

Java复习第二天和第三天相关推荐

  1. java 第二天,Java复习第二天

    1.idea里jar包和war的区别 JAR(JAVA Archive 是类的归档文件),JAR 文件不仅用于压缩和发布,而且还用于部署和封装库.组件和插件程序,并可被像编译器和 JVM 这样的工具直 ...

  2. Java复习之抽象类和接口

    Java复习之抽象类和接口 Java复习之抽象类和接口 什么是抽象类和接口 抽象类与接口的区别 什么情况下使用抽象类或接口 一个demo引起来的对于java方法区堆栈的研究 首先我们需要明白抽象类与接 ...

  3. Java复习打卡day30

    Java复习打卡day30 前置 前置导学 HTML语言 HTML介绍 HTML语言的基础语法 常见标签 文本标签 格式化标签 图像标签 超链接标签 表格标签 表单标签 前置 前面我们主要讲述了Jav ...

  4. 中国海洋大学-信息系统开发(Java)复习

    Java复习 OUC_Shizue 1 Java编译器和执行器 Java编译器和执行器是Java语言的两个核心组件,分别用于将Java源代码编译成Java字节码文件和运行Java字节码文件. Java ...

  5. Java复习面试知识点

    Java复习面试知识点 前言: 简要的记录一下学习到的东西,仅供自己查阅和复习方便.希望该文章能对你有帮助,文章学习自博客和b站UP主的教程 集合: 集合简介: Java标准库自带的java.util ...

  6. Java复习第11天---11.4---Java8新特性---Stream流常用方法3和综合案例

    Java复习第11天---11.4---Java8新特性---Stream流常用方法3和综合案例 目录 文章目录 1.count:计数-终结方法 2.limit:取前几个元素-延迟方法 3.skip: ...

  7. mysql 时间戳 三天_MySQL格式化时间戳 统计当日,第二天,第三天,3个工作日以后的数据...

    mysql 查询出来的处理时间和开始时间都是13位的时间戳 SELECT `END_TIME`,`CREATE_TIME` FROM t_table 需求是统计当日,第二天,第三天,3个工作日以后的时 ...

  8. Java基础 if if-else if-else if-else 三种示例

        JDK :OpenJDK-11      OS :CentOS 7.6.1810      IDE :Eclipse 2019‑03 typesetting :Markdown   code ...

  9. 在c语言中a 这条语句的作用,C语言复习第二章

    C语言第二章 C语言复习(第二章) 一.填空 1.若采用十进制数的表示形式,则077为( ),0111为( ),0xab为( ). 2.C语言中的标识符只能由3种字符组成,它们是( ).( )和( ) ...

最新文章

  1. MySQL_解决ERROR 2006 (HY000) at line XX MySQL server has gone away问题
  2. 45个实用的JavaScript黑科技
  3. mysql can_***MySQL错误:Can't connect to MySQL server (10060)
  4. html5如何传递值,如何将var中的值传递到另一个var
  5. linux下c和c++互相调用
  6. WPF里面的常用笔刷
  7. Gartner 组织世界BI大会,PowerBI 与 Tableau 同台竞技
  8. 腾讯TBS加载网页无法自适应记录
  9. 微服务架构设计模式~根据业务能力进行服务拆分
  10. 训练集、验证集、测试集区分
  11. Android 无法查看外部依赖jar的源码的问题
  12. requestparam的作用_关于@RequestMapping和@RequestParam注解(四)
  13. 横扫六大权威榜单后,达摩院开源深度语言模型体系 AliceMind
  14. ubuntu 11.10 下network proxy 的设置问题
  15. MySQL数据常用命令
  16. win10系统托盘图标不见了_win10托盘图标不显示怎么回事_win10任务栏托盘图标显示不完全如何修复...
  17. 06-20210308华为海思Hi3516DV300鸿蒙系统的uboot编译
  18. 广东大学计算机基础教材,21世纪高等学校计算机公共基础课规划教材:大学计算机基础(第2版)...
  19. 怎么看电脑支持多少兆网速_电脑网速怎么看(电脑怎么看网速多少兆)
  20. 独家研究 I 某新一线城市中高端养老社区项目(CCRC)入住客户画像深度洞察研究报告

热门文章

  1. 阿里巴巴2008校园招聘在线宣讲会
  2. Dreamweaver中如何调整同行图片的距离
  3. 关于角色的转变的思考
  4. Android使用Service从服务器上下载一个安装包的全过程
  5. VS Code 修改字体为JetBrains Mono
  6. docker部署smokeping监控网络掉包
  7. 顺时针螺旋打印二维数组
  8. Android input 系统InputReader,InputDispatcher线程实例--UI死掉
  9. OEA 中 WPF 树型表格整体重构
  10. Python总纲路线