[关闭]
@wangyupu 2020-06-02T08:47:17.000000Z 字数 3137 阅读 32

java入门基础第二章变量和数据类型

java基础


本课目标

  1. 掌握标识符和关键字
  2. 掌握变量和常量的使用
  3. 了解Java中的数据类型
  4. 掌握数据类型转换

啥叫Java?

  1. 变量:一个数据存储空间的表示

java常用数据类型

八大基本数据类型

  1. int 整型
  2. byte 短整型(字节型)
  3. short 短整型
  4. long 长整形 长整形后标识L区分
  5. float 单精度浮点型 后缀加(f
  6. double 双精度浮点型
  7. char 字符类型 单引号引起来永远只能放一个
  8. Boolean 布尔类型 true或者flase
  9. ##引用数据类型
  10. string name="张三" 引用数据类型没有长度

变量和声明

  1. 第一步:声明变量,根据数据类型在内存申请空间
  2. 数据类型变量名;int money;
  3. 第二步:赋值,即“将数据存储至对应的内存空间”
  4. 变量名=数值;money= 1000 ;
  5. 第一步和第二步可以合并
  6. 数据类型变量名=数值;int money = 1000;
  7. 第三步:使用变量,即“取出数据使用’

常量

  1. 在程序运行中,其值不能改变的虽如何表示?
  2. final int NUM= 10;
  3. final double PI = 3.14;
  4. intr= 2;
  5. double area= PI *r * r;
  6. 优点:比较安全
  7. 推荐做法:
  8. (1)常虽名通常大写
  9. (2)不同字符使用下划线分隔
  10. (3)只能被赋值一次,通常定义时即对其初始化

Scanner的使用

  1. 在程序运行中,如何接收用户键盘输入的值?
  2. 使用Scanner
  3. 第一步:导入Scanner
  4. import java.util.*;
  5. 第二步:创建Scanner对象
  6. Scanner input = new Scanner(System.in);
  7. 第三步:获得键盘输入的数据.
  8. int now = input.nextlnt();

自动类型转换

  1. 某班第一次Java考试平均分81.29,第二次比第一次
  2. 2分,计算第二次考试平均分?
  3. double firstAvg= 81.29; //第一次 平均分
  4. double secondAvg; //第 二次平均分
  5. int. rise2:
  6. secondAvg = firstAvg + rise;
  7. System.out.println("第二次平均分是:+ secondAvg);

自动类型转换规则

  1. 规则1:如果一个操作数为double型,则整个表达式
  2. 可提升为double
  3. 规则2:满足自动类型转换的条件
  4. 两种类型要兼容
  5. 数值类型(整型和浮点型)互相兼容
  6. 目标类型大于源类型:
  7. 例如: double 型大于int

强制类型转换规则

  1. int b = (int)10.2;
  2. doublea= 10;
  3. intC= (int)a;
  4. 去年Apple笔记本所占市场份额是20,今年增长市场份额是
  5. 9.8,求今年所占份额?
  6. int before = 20; //apple笔 记本市场份额
  7. double rise=9.8; //增长的份额
  8. int now= before + rise; //现在的份额

赋值运算符

  1. 学员王浩的Java成绩是80分,学员张萌的Java
  2. 绩与王浩的相同,输出张萌的成绩
  3. 变量名=表达式;
  4. 表达式就是符号(如加号、减号)与操作数(如b, 3等)的组合

算数运算符2-1

  1. 基本的算术运算
  2. +、-、*、/、%、++、-
  3. 复合算术运算符
  4. +=、-=、*=、/=、%=

算数运算符2-2

  1. 下面代码片断的输出结果是什么?
  2. intnum1=5;
  3. int num2= 2;
  4. inta = num1 % num2;
  5. int b = num1 / num2;
  6. System.out.println(num1 + " % " + num2
  7. +"="+ a);
  8. System.out.println(num1+" / " + num2 +
  9. "="+ b);
  10. num1++;
  11. num2--;
  12. System.out.println("num1 = " + num1);
  13. System.out.println("num2 = " + num2);

关系运算符

运算符 含义 范例 结果
== 等于 5==6 false
!= 不等于 5!=6 true
> 大于 5>6 false
< 小于 5<6 true
.>= 大于等于 5>=6 false
<= 小于等于 5<=6 true
  1. =为赋值运算符,==为等于运算符|
  2. 注意关系表达式的结果为布尔值
  3. >、<、>=、<=运算符的优先级别高于==、!=
  4. >、<、>=、<=运算符只支持数值类型的数据比较

逻辑运算符

运算符 含义 运算规则
&& 短路与 两个操作数都是true,结果才是true
短路或 两个操作数一个是true,结果就是true操作数为true,结果为false
! 操作数为false,结果为true
  1. 如果第一个操作数已经能确定表达式的值, 第二个操作数就不必计算了;
  2. 优先级别!> &&> ||

条件运算符

  1. 条件?表达式1:表达式2
  2. true
  3. false
  4. int min;
  5. min=5<7 ? 5: 7;
  6. System.out.println(min);
  7. min=10<7?10:7;
  8. System.out.println(min);
  9. 也称为三目(三元)运算符

运算符优先级

  1. 单目运算符包括!++--,优先级别高
  2. 优先级别最低的是赋值运算符
  3. 从以通过()制表达式的运样顺序,()优先级最高
  4. 目运算符
  5. 从右向左结合性的只有赋值运算符、三目运算符和单目运算符
  6. 算术运算符>关系运算符>逻辑运算符

老师讲课实录

  1. import java.util.Scanner;
  2. public class test1 {
  3. public static void main(String[] args) {
  4. Scanner sc = new Scanner(System.in);
  5. System.out.println("请输入张浩的成绩:");
  6. int score = sc.nextInt();
  7. // 90以上 优秀
  8. // 90-80 良好
  9. // 80以下 垃圾
  10. // if .....else if....else if.... else...
  11. if(score>90)
  12. {
  13. System.out.println("优秀");
  14. }
  15. else if(score<=90&&score>=80)
  16. {
  17. System.out.println("良好");
  18. }
  19. else if(score<80)
  20. {
  21. System.out.println("垃圾");
  22. }
  23. // if......else.... 如果....否则.....
  24. /*if(score>90){
  25. System.out.println("奖励一个女朋友....");
  26. }else{
  27. System.out.println("奖励一个嘴巴子...");
  28. }*/
  29. System.out.println("程序结束!");
  30. }
  31. }

示例2

  1. import java.util.*;
  2. public class test2 {
  3. /**
  4. * @param args
  5. */
  6. public static void main(String[] args) {
  7. //在程序运行过程中可以改变的量叫变量
  8. //final 常量
  9. /* final int count = 0;
  10. System.out.println(i);
  11. String rsglxt = "xxx";
  12. System.out.println(i);*/
  13. /*
  14. * 1. 导入 import java.util.*;
  15. * 2. 创建 Scanner inp = new Scanner(System.in);
  16. *
  17. *
  18. */
  19. Scanner inp = new Scanner(System.in);
  20. System.out.print("请输入姓名:");
  21. String name = inp.next(); //接收字符串
  22. System.out.print("请输入年龄:");
  23. int age = inp.nextInt();//接收int型
  24. System.out.print("请输入余额:");
  25. double money = inp.nextDouble();//接收int型
  26. System.out.println("您的名字叫"+name);
  27. System.out.println("您的年龄"+age);
  28. System.out.println("您的账户余额"+money);
  29. }
  30. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注