day05-类型转换和变量
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-类型转换和变量的更多相关文章
- 小猪猪逆袭成博士之C++基础篇(一)数据精度、强制类型转换、变量命名规则
小猪猪逆袭成博士之C++基础篇(一) 关键词: 数据精度.强制类型转换.变量命名规则 综述: 1.大多数编程语言通过两种方式来进一步补充其特征:一是赋予程序员自定义数据类型的权利(C++中的类):二是 ...
- Java程序,基本数据类型、、数据类型转换、变量和常量、常用运算符
一.基本数据类型 整数类型:byte.short. int(常用).long(较常用) 定义某个变量 int a=10: 浮点类型(小数):float.double(常用) ...
- HTML基础--JS简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、数组、函数、函数调用.avi
JS简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司(已被Oracle收 ...
- PostgreSQL 中日期类型转换与变量使用及相关问题
PostgreSQL中日期类型与字符串类型的转换方法 示例如下: postgres=# select current_date; date ------------ 2015-08-31 (1 row ...
- 007PHP基础知识——类型转换 外部变量
<?php /**类型转换 */ /*1.自由转换*/ /*2.强制转换:不改变原变量,生成新的变量*/ //转换为字符串: /*$a=100; $b=(string)$a; var_dump( ...
- 关于c#数据类型,类型转换,变量,常量,转义符。。。
先说一下数据类型...数据类型可以分为两大类:基本数据类型和引用类型. 基本数据类型按功能又分为“值类型”,“布尔型”,“字符型”. 引用类型分为“字符串”,“时间日期”. 没图没真相↓面放图. 橙 ...
- Eclipse-运行符-数据类型转换-环境变量配置
1.能够使用Eclipse快捷键 ctrl + / 单行注释:再按一次则取消: ctrl + shift + / 多行注释: ctrl + shift + \ 取消多行注释: ctrl + ...
- C#输入输出及类型转换,变量,常量。
//输出 Console.WriteLine("大哇塞"); 自动回车的. Console.Write("Hello world"); 不带回车的 注意: 1 ...
- day3 python数据类型转换及变量的缓存机制
类型转换 1,强制类型转换 1.1 number的转换(int,float,bool,complex) num1 = 10 num2 = 10.6 num3 = True num4 = 3 + 4j ...
- 【JAVA】笔记(1)---JVM内存图;方法重载条件;输入方法;转义字符;强制类型转换;变量分类及区别;Java命名规范;
Java命名规范: 1.包:全部字母小写: 2.类+接口:所有单词的首字母大写: 3.变量+方法:第一个单词的首字母小写,其余单词首字母大写: 3.常量名:所有字母均大写,且用下划线" _ ...
随机推荐
- day20 Pyhton学习 面向对象-类与类之间的关系
一.类与类之间的依赖关系 class Elphant: def __init__(self, name): self.name = name def open(self, ref): print(&q ...
- 性能测试-CPU瓶颈分析的思路
CPU(中央处理器),是电子计算机的主要设备之一,电脑中的核心配件.CPU作为计算机系统的运算和控制核心,是信息处理.程序运行的最终执行单元.CPU的功效主要为处理指令.执行操作.控制时间.处理数据. ...
- jquery的实时触发事件(textarea实时获取中文个数)
jquery的实时触发事件(textarea实时获取中文个数) (2014-09-16 11:49:50) 转载▼ 标签: 实时触发事件 中文个数 onpropertychange oninput o ...
- 【二分】CF Round #587 (Div. 3)E2 Numerical Sequence (hard version)
题目大意 有一个无限长的数字序列,其组成为1 1 2 1 2 3 1.......1 2 ... n...,即重复的1~1,1~2....1~n,给你一个\(k\),求第\(k(k<=10^{1 ...
- Linux下快速搭建测试网站DVWA
DVWA(Damn Vulnerable Web App)是一个基于PHP/MySql搭建的Web应用程序,旨在为安全专业人员测试自己的专业技能和工具提供合法的 环境,帮助Web开发者更好的理解Web ...
- TimeSpan时间间隔详解
1 public string GetShiXian(string fadanshijian) 2 { 3 string result,chulishijian; 4 5 DateTime fdTim ...
- SpringBoot整合日志log4j2
SpringBoot整合日志log4j2 一个项目框架中日志都是必不可少的,随着技术的更新迭代,SpringBoot被越来越多的企业所采用.这里简单说说SpringBoot整合log2j2日志. 一. ...
- JS时间扩展插件
前言 原生JS有些没定义的方法只能自己封装了,比如获取现在相隔本年过了几天以及过了多少周,这些都是原JS里没有的方法,现在插件只有一些方法,后期再慢慢扩展 插件使用方法 引用TimeToPack.js ...
- Ubuntu Eclipse启动时报错:A Java RunTime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No java virtual machine was found after searching the following locations:
此问题起于我在Ubuntu1004上装了两个版本的eclipse:Galieo+helios:卸载前者后出现启动不了eclipse的问题:在网上找了下,可以按如下过程进行解决: Eclipse 3 ...
- Linux入门到放弃之八《任务计划管理》
任务计划管理 1.每周一下午5:50将/data目录下的所有目录和文件归档并压缩为:backup.tar.gz 放在/home/backup目录下. 先新建/data目录,并在目录中随意生成几个文件 ...