Java
MySQL
Python
大数据
前端
黑科技
    首页 > 互联网 > Java > java注释,java变量java八大数据类型

java注释,java变量java八大数据类型

[导读]:今日任务: 注释 变量:重点 数据类型:重点 ======================================================================= 注释: 作用: 解释代码的作用 部分代码暂时不参与编译,注释掉,不参与编译 种类: 单行注...
  今日任务:
 
  注释
 
  变量:重点
 
  数据类型:重点
 
  =======================================================================
 
  注释:
 
  作用:
 
  解释代码的作用
 
  部分代码暂时不参与编译,注释掉,不参与编译
 
  种类:
 
  单行注释://
 
  注释范围:从//开始,到这行的末尾
 
  多行注释:/**/
 
  注释范围:从/*开始,到下面离他最近的*/结束
 
  多行注释不能嵌套
 
  文档注释:/***/
 
  注释范围:从/**开始,到下面离他最近的*/结束
 
  和多行注释很像,可以跨行
 
  javadoc:生成文档
 
  语法:javadoc-d文档路径源代码文件.java
 
  eg:javadoc-d document Homework4.java
 
  对类的注释,方法的注释,属性的注释,可以用文档注释
 
  文档中对应的类,方法,属性包含其中的注释部分
 
  =======================================================================
 
  变量:
 
  存储数据
 
  内存中开辟一块空间,值可变的
 
  变量名:空间的代名词
 
  利用变量名对这块空间操作,赋值(修改值),获取值
 
  程序离不开数据处理,离不开变量
 
  语法:
 
  1)声明变量
 
  数据类型变量名;
 
  eg:int num1;
 
  eg:int num1,num2;//多个变量用,隔开
 
  2)变量赋值,第一次赋值称为初始化
 
  变量名=值;
 
  把值赋给变量,右边结果赋给左边变量
 
  被赋值的变量名必须在左边,值在右边
 
  eg:num1=4;
 
  可以在声明时直接初始化
 
  数据类型变量名=值;
 
  eg:int num2=5;
 
  eg:int num3=3,num4;
 
  3)使用变量
 
  变量名在等号左边赋值
 
  变量名在等号右边获取值
 
  在输出语句中,变量名获取值
 
  注意:必须声明且赋值了,才可以获取值
 
  变量命名规则:
 
  组成:
 
  第一个字符:字母,_,$
 
  其他字符:字母,_,$,数字
 
  通常以字母开头
 
  驼峰命名法(小驼峰):
 
  第一个单词小写,从第二个单词开始每个单词首字母大写
 
  见名知意:
 
  比如:年龄age
 
  学生年龄studentAge stuAge
 
  老师年龄teacherAge
 
  不能使用关键字(保留字)
 
  比如:class public void...
 
  大小写敏感的,完全区分大小写的
 
  类名:
 
  驼峰命名法(大驼峰):
 
  每个单词首字母都大写
 
  标识符:需要我们起的名字,比如变量名,类名,方法名等等
 
  eg:哪些变量名会报错
 
  4age
 
  age4√
 
  age-4
 
  age_4√
 
  %tom
 
  $tom√
 
  VOID√方式不好,但不会报错
 
  eg:值的交换:
 
  变量num1值是4
 
  变量num2值是6
 
  要完成交换两个变量的值?
 
  =====================================================================
 
  数据类型
 
  基本类型
 
  java中空间最小单位:字节
 
  整型:存储整数,范围不同
 
  byte:字节型,1字节,-128~127-2^7~2^7-1
 
  short:短整型,2字节,-32768~32767-2^15~2^15-1
 
  int:整型,最常用,4字节,-2148473648~2148473647-2^31~2^31-1
 
  long:长整型,8字节-2^63~2^63-1
 
  字面值:也是有类型的
 
  3:int
 
  3L或者3l:long
 
  字符型:
 
  char:2字节
 
  java使用unicode16字符集,存储的是字符对应的码值
 
  也可以把字符型归为整型
 
  字面值:
 
  用单引号括起来:比如'我''a''1''*'
 
  有一些字符无法直接表达,利用转移字符来表达
 
  比如换行符,
 
  制表符,
 
  反斜杠,
 
  英文的双引号:"
 
  浮点型:不是精确存储,和实际值可能有差异的
 
  float:单精度浮点型,4字节,精度在6~7位
 
  double:双精度浮点型,最常用,8字节,精度在15位
 
  字面值:
 
  1.1,1.0,2.3:double
 
  2.3e2:2.3*10^2 aeb:a*10^b a:整数浮点数都可以,b只能是整数
 
  1.1F或1.1f:float
 
  布尔类型:
 
  boolean:1字节,只有两个值,true(真,成立),false(假,不成立)
 
  条件,循环中使用到布尔类型
 
  引用类型(后面学习,重点,难点)
 
  数组,对象
 
  字节:
 
  1字节=8位
 
  1T:1024G
 
  1G:1024M
 
  1M:1024K
 
  1K:1024字节
 
  1字节:8位
 
  计算机:二进制,0,1
 
  1位:存0或1
 
  2 4 8 16 32 64 128 256
 
  2的10次方:1024
 
  进制:了解
 
  计算机中:二进制0,1以0B开头,0B101
 
  实际表达数字:十进制0~9
 
  其他进制:八进制0~7以0开头,01,012
 
  十六进制0~9A~F以0X开头0X1 0X12
 
  十进制和二进制的相互转化
 
  十进制转二进制:利用短除法
 
  不断除以2,取余数,直到商是0为止,把所有的余数倒置抓换成对应的二进制结果
 
  二进制转十进制:
 
  每一位乘以2的(位数-1)次方的和
 
  求:十进制120对应的二进制是多少?0B1111000
 
  求:求二进制1011001对应的十进制是多少?89
 
  了解八进制和二进制相互转化:
 
  一个八进制位对3个二进制位
 
  0B10 111 011:0273
 
  0122:0B001 010 010
 
  计算机存储时
 
  最高位符号位:0表示正1表示负
 
  以8位为例
 
  原码:
 
  正整数:3->00000011
 
  负整数:-3->10000011
 
  反码:
 
  正整数不变
 
  负整数:除了符号位,按位取反(0->1,1->0)
 
  正整数:3->00000011
 
  负整数:-3->10000011(原码)
 
  11111100(反码)
 
  补码:
 
  正整数不变
 
  负整数:在反码基础上+1
 
  除了符号位以外,按位取反再+1
 
  正整数:3->00000011
 
  负整数:-3->10000011(原码)
 
  11111100(反码)
 
  11111101(补码)
 
  补码->除了符号位以外,按位取反再+1
 
  11111101(补码)
 
  10000010
 
  10000011(原码)
 
  存储时用补码
 
  byte b1=3;//-128~127
 
  1字节:8位
 
  正整数:1~127
 
  0
 
  负整数:-128~-1
 
  原码:
 
  00000001~01111111(1~127)
 
  00000000,10000000(0就有2种表示形式,不合理)
 
  11111111~10000001(-127~-1)
 
  反码:
 
  00000001~01111111(1~127)
 
  00000000,11111111(0就有2种表示形式,不合理)
 
  10000000~11111110(-127~-1)
 
  补码:
 
  00000001~01111111(1~127)
 
  00000000,00000000(0只有1种表示形式)
 
  10000001~11111111(-127~-1)
 
  10000000:没用上,代表-128
 
  补充:运行的程序可能需要和用户交互,通过键盘输入值进行赋值
 
  暂时把程序记住:
 
  InputDemo.java
 
  //导入系统提供的工具类Scanner
 
  import java.util.Scanner;
 
  public class InputDemo{
 
  public static void main(String[]args){
 
  //创建一个Scanner对象,用来输入值
 
  //input:是引用类型的变量名,变量名随意
 
  Scanner input=new Scanner(System.in);
 
  //从键盘输入两个整数,求和
 
  System.out.println("请输入第一个整数:");
 
  //input.nextInt():获取键盘输入的一个整数
 
  int num1=input.nextInt();
 
  System.out.println("请输入第二个整数:");
 
  int num2=input.nextInt();
 
  int result=num1+num2;
 
  System.out.println(result);
 
  }
 
  }
 
  Scanner input=new Scanner(System.in);
 
  input.nextInt():int
 
  input.nextDouble():double
 
  input.nextFloat():float
 
  input.nextLong():long
 
  类型转换:
 
  针对基本类型中的数值型(除了布尔类型)
 
  实际中,可能会出现不同类型的数据做运算,涉及到类型转换
 
  eg:输入三角形的底(整型)和高(整型),求面积,考虑到可能会.5,选择了double
 
  把几个数值型排序:
 
  byte,short,char<int<long<float<double
 
  自动类型转换:
 
  1)小的可以直接赋值大的类型
 
  eg:double d1=3;
 
  2)int字面值可以直接赋给byte,short,char,但不能超过范围
 
  eg:byte b1=3;
 
  byte b2=128;//错误,超过范围
 
  3)byte,short,char在参与运算时,值会自动转换成int来参与运算
 
  eg:byte b1=1;
 
  byte b2=2;
 
  byte b3=b1+b2;//错误,byte在参与运算时自动转换成int
 
  4)在参与运算时,运算的结果取类型较大的
 
  eg:
 
  int i1=3;
 
  double d1=i1+1+1.1;
 
  //i1+1:int
 
  //4+1.1:double
 
  double area=bottom*height/2
 
  int int
 
  3 5
 
  7
 
  double area=bottom*height/2.0
 
  int int
 
  3 5
 
  7.5
 
  强制类型转换:
 
  类型较大的赋给类型较小的
 
  编译无法通过,可能会导致值溢出,结果是意外的
 
  可以通过强制类型转换,编译通过,表示我们接受意外的结果
 
  类型1变量1=(类型1)变量2;
 
  eg:
 
  double d1=3.3;
 
  int i1=(int)d1;
 
  =====================================================================
 
  明日任务:
 
  1.运算符
 
  2.条件结构(一部分)
 
  练习题:可以私聊作者
 
  多敲代码,增加代码感觉和熟练度
 
  笔记,重点部分过一遍

本文来自投稿,不代表阿习进阶博客立场,如若转载,请注明出处:https://www.yanxias.com/Java/14.html

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!
点击这里给我发消息