1、类型转换概念

  • java是强类型语言,所以有些运算的时候,需要用到类型转换

  • 类型转换原则:低-->高,byte,short,char-->int-->long-->float-->double

  • 运算中,不同类型的数据先转换为同一类型,然后进行运算。

  • 强制类型转换(高到低)

  • 自动类型转换(低到高)

import javafx.scene.layout.BorderImage;

public class Hello{
   public static void main(String[] args) {
       int i = 128;
       byte b = (byte)i;  //强制类型转换(高到低),但此处超出byte取值范围,会发生内存溢出
       double c = i;//自动转换,低到高

       System.out.println(i);
       System.out.println(b);
       System.out.println(c);

       /*
       注意点:
       1、不能对布尔值进行转换
       2、不能把对象类型转换为不相干的类型
       3、在把高容量转换到低容量的时候,强制转换
       4、转换的时候可能存在内存溢出,或精度问题!
        */

       System.out.println(=====================);
       System.out.println((int)23.7);    //23
       System.out.println((int)-45.89f); //-45

       System.out.println(=====================);
       char d = 'a';
       int e = d+1;
       System.out.println((char)e);//字符强制转换

  }
}

2、变量

  • 变量是什么:就是可以变化的量!(变量代表一个内存中的”空间“)

  • java是一种强类型的语言,每个变量都必须声明其类型。

  • java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。

type varName =value}];

//数据类型 变量名 = 值;可以使用逗号来隔开声明多个同类型的变量。

  • 注意事项:

    • 每个变量都有类型,类型可以是基本类型,也可以是引用类型

    • 变量名必须是合法的标识符

    • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束

变量的作用域

  • 类变量

  • 实例变量

  • 局部变量

public class demo09 {

   //类变量 static
   static double salary = 2500;



   //属性:变量

   //实例变量,从属于对象;如果不执行初始化,则为这个类型的默认值 0 0.0 u0000;
   //布尔值:默认是false
   //除了基本类型,其余的默认值都是null;

   String name;
   int age;

   //main方法
   public static void main(String[] args) {
       //局部变量:必须声明和初始化值
       int i = 10;
       System.out.println(i);

       //使用实例变量格式
       // 变量类型 变量名字 = new Demo09();
       demo09 Demo09 =new demo09();
       System.out.println(Demo09.age);
       System.out.println(Demo09.name);

       //类变量 static
       System.out.println(salary);


  }

   //其他方法
   public void add(){

  }
}

常量

  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。

  • 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。

final 变量名=值;
final double PI = 3.14;
  • 常量名一般使用大写字符。

变量的命名规范

  • 所有变量、方法、类名:见名知意

  • 类成员变量:首字母小写和驼峰原则:除了第一个单词意外,后面单词首字母大写,如:monthSalary;lastName

  • 局部变量:类成员变量:首字母小写和驼峰原则

  • 常量:大写字母和下划线:MAX_VALUE

  • 类名:首字母大写和驼峰原则:如GoodMan

  • 方法名:首字母小写和驼峰原则:如runRun()

示例

public class demo08 {

   static final double PI =3.14;
   //final static double PI =3.14;final与static为修饰符,不存在先后顺序

   public static void main(String[] args) {
       System.out.println(PI);
  }

}

day05-类型转换和变量的更多相关文章

  1. 小猪猪逆袭成博士之C++基础篇(一)数据精度、强制类型转换、变量命名规则

    小猪猪逆袭成博士之C++基础篇(一) 关键词: 数据精度.强制类型转换.变量命名规则 综述: 1.大多数编程语言通过两种方式来进一步补充其特征:一是赋予程序员自定义数据类型的权利(C++中的类):二是 ...

  2. Java程序,基本数据类型、、数据类型转换、变量和常量、常用运算符

    一.基本数据类型 整数类型:byte.short. int(常用).long(较常用)     定义某个变量          int  a=10: 浮点类型(小数):float.double(常用) ...

  3. HTML基础--JS简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、数组、函数、函数调用.avi

    JS简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司(已被Oracle收 ...

  4. PostgreSQL 中日期类型转换与变量使用及相关问题

    PostgreSQL中日期类型与字符串类型的转换方法 示例如下: postgres=# select current_date; date ------------ 2015-08-31 (1 row ...

  5. 007PHP基础知识——类型转换 外部变量

    <?php /**类型转换 */ /*1.自由转换*/ /*2.强制转换:不改变原变量,生成新的变量*/ //转换为字符串: /*$a=100; $b=(string)$a; var_dump( ...

  6. 关于c#数据类型,类型转换,变量,常量,转义符。。。

    先说一下数据类型...数据类型可以分为两大类:基本数据类型和引用类型. 基本数据类型按功能又分为“值类型”,“布尔型”,“字符型”. 引用类型分为“字符串”,“时间日期”.  没图没真相↓面放图. 橙 ...

  7. Eclipse-运行符-数据类型转换-环境变量配置

    1.能够使用Eclipse快捷键 ctrl + /   单行注释:再按一次则取消: ctrl + shift + /  多行注释:  ctrl + shift + \  取消多行注释: ctrl + ...

  8. C#输入输出及类型转换,变量,常量。

    //输出 Console.WriteLine("大哇塞"); 自动回车的. Console.Write("Hello world");  不带回车的 注意: 1 ...

  9. day3 python数据类型转换及变量的缓存机制

    类型转换 1,强制类型转换 1.1 number的转换(int,float,bool,complex) num1 = 10 num2 = 10.6 num3 = True num4 = 3 + 4j ...

  10. 【JAVA】笔记(1)---JVM内存图;方法重载条件;输入方法;转义字符;强制类型转换;变量分类及区别;Java命名规范;

    Java命名规范: 1.包:全部字母小写: 2.类+接口:所有单词的首字母大写: 3.变量+方法:第一个单词的首字母小写,其余单词首字母大写: 3.常量名:所有字母均大写,且用下划线" _ ...

随机推荐

  1. Elasticsearch 基于external的乐观锁的版本控制

    version_type=external,唯一的区别在于,_version,只有当你提供的version与es中的_version一模一样的时候,才可以进行修改,只要不一样,就报错:当version ...

  2. C语言/C++编程学习:送给考计算机二级的同学:公共基础知识总结!

    数据结构与算法 1.算法 算法:是指解题方案的准确而完整的描述. 算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计. 算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效 ...

  3. 【原创】xenomai内核解析--xenomai与普通linux进程之间通讯XDDP(二)--实时与非实时关联(bind流程)

    版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ 1.概述 上篇文章介绍了实时端socket创建和配置 ...

  4. phpstorm 使用xdebug

    一.在phpstudy配置 开启xdebug的zend扩展,在php.ini 中添加下面的代码: [xdebug] zend_extension = "D:\phpstudy_pro\Ext ...

  5. JS获取DropDownList选择项的值

    var dropDownList= document.getElementById("<%=DropDownListID.ClientID %>");//获取DropD ...

  6. 技术债! 怎样简洁高效的实现多个 Enum 自由转换

    一:背景 1. 讲故事 前段时间和同事负责一个项目的两个业务模块,可能大家缺少沟通,导致本该定义一个 Enum 的地方结果我俩各自定义了一个,导致后面这两个 Enum 进行对接就烦了,为了方便理解,也 ...

  7. Linux入门到放弃之一《在VMware虚拟机中安装Linux系统(RedHat)》

    1.启动VMware: 2.新建虚拟机: 3.自定义配置(1安装客户机操作系统点击"稍后安装操作系统"2选择客户机操作系统为Linux,版本为Red Hat Enterprise ...

  8. 最新版Python 3.8.6 版本发布

    Python 3.8.6 发布了,它是 Python 3.8 的第六个维护版本. 3.8 系列的维护版本将每两个月定期更新一次,3.8.7 计划于 2020 年 11 月中旬发布. 随着维护版本的发布 ...

  9. windows下安装redis集群

    前几天在自己在本机win10 电脑下部署了redis集群. 主要通过的是网上两个博客: 如何在windows下部署redis集群:https://blog.csdn.net/zsg88/article ...

  10. 前后端分离Java后端主流开发环境框架20200622

    开发环境: IDE:IntelliJ IDEA 2017+ DB: mysql5.7.4.PostgreSQL.mongoDB.redis JDK:JDK1.8+ Maven:Maven 3.2.3+ ...