java数据类型(大小等),变量定义,各进制书写方法
1.

java中字符占两个字节,因为char类型占两个字节(16位),而C,C++中占1字节(8位)。
2. 变量定义
第一步:声明(Declaration)
第二步:赋值(Assignment)
这两步可以合并: int X = 10;
3.局部变量和全局变量可重名,方法中调用的是局部变量,方法外调用的是全局变量。
4.各进制书写方法
十进制无前缀
八进制(octal)前面加数字“0”
十六进制(hexadecimal)前面加“0x”或“0X”(数字“0”和字母“X”)。
5.科学计数(指数形式)
10e2 或 10E2或1.56e3
分别为10*10^2 ,10*10^2 和 1.56*10^3。其中,10e2还可以写成:10e+02
表示指数形式时,e前面必须有数字 ,e后面必须是整数。例如:7.012e+23f;
6.类型转换casting
小的赋给大的,自动转换(隐式转换Implicit Casting)
强制类型转换(Explicting Casting)是暂时的,一次性的,不会改变其后面表达式的类型,会出现截断(truncation)
如:a=3.45; (int)a = 3;
截断不是四舍五入!int a =(int)1.2; int b = (int) 1.9; //二者都是“1”,不会四舍五入!
若浮点值太大而不能适合目标整数类型。那么它的值将会因为对目标类型值域取模而减小。
如:byte b; int i = 257;
则 b = (byte)i; //则b=1
下面的代码供以后复习看:
public static void main(String args[]){
long y = 123;//√ long类型的数,最好后面明确指出,不指出也不会报错。
long x = 123L;
long z = 123l;
float a = 12;//√ 同样 后面最好加上f(F)
double b = 12;//√ 加上d(D)
//float aa = 12.0; //× 12.0若不加l(L),则默认为double类型
double bb = 12.0; //√
//'a'是字符常量;"a"是字符串常量
char c ='a';
String d = "a";
char ch1,ch2;
ch1 = 65; //√ 表示'A'
ch2 = 'B';
int ch = ch1 -ch2;//√ 自动转换成int
//char cc =ch1 -ch2;//× 自动转换成int
ch1++ ; //√ 表示'B'
//java 运行加减,直接把char 类型当做整数来运行
int s = 'a' +'b';//√ ‘a’就是97,则s = 195
char test1 = 'a' + 28;//√ test1为195对应的字符
char test2 = '中';//√
//int a = 1.2;//× 会损失精度,违法的
//以下都是隐式转换
byte e = 0x60;//√
int ie = e;//√
char g = 'a';//√
int ig = g;//√
long h = ig;//√
long i = 1000000000l;//√
float j = i;//√
double k =j;//√
String str = "hello";//√
Object o =s;//√
//以下都是显示转换
long l = 1000000L;
//int i =l;//×
Object o2 = new String("hello");
//String str2 = o2;//×
}
public class Test{
public static void main (String [] ABC){
long l = 0xfffl;
long l1= 0XfffL;//大小写不影响的哦~
int i = 0xFFFFFF1;
int j = ~i;
//则 j = 14;“~”为求补运算
float a1 = -1;//int to float
//float a2 = 1.0;//wrong~!double to float!
//float a3 = 42e1;//wrong~!double to float!
float a4 = 2.02f;
//float a5 = 3.01d;//wrong~!double to float!
float a6 = 0x00123;
Boolean b = null;
//boolean b1 = null;//这句错了!!why?
boolean c = true;
Boolean c1 = true;
// boolean是基本数据类型
// Boolean是它的封装类,和其他类一样,有属性有方法,可以new,例如:
// Boolean flag = new Boolean("true"); // boolean 则不可以!
// Boolean 是boolean 的实例化对象类,和Integer对应int一样
// 自jdk1.5.0以上版本后,Boolean在"赋值"和判断上和boolean一样,
// 即是你: boolean b1 = true ; 或者 Boolean b2 = true ; 都可以。
// 唯一只能使用Boolean上的就是从列表或者哈希表获取值时。
// 比如 boolean t = false;
// Map map = new HashMap();
// map.put("t", t);
// 那么获取值时只能用
// Boolean t1 = (Boolean) map.get(t); //前面只能用Boolean强制转换,不能使用boolean.
}
}
java数据类型(大小等),变量定义,各进制书写方法的更多相关文章
- JAVA之旅(一)——基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算
JAVA之旅(一)--基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算 Android老鸟重新学一遍JAVA是什么感觉?枯燥啊,乏味啊,而且归纳写博客,都 ...
- java 将数字转成成16进制
java 将数字转成成16进制 CreationTime--2018年6月11日17点11分 Author:Marydon 1.前提 数字必须是byte类型,即[-128,127] 2.代码实现 ...
- 2 Java基础语法(keyword,标识符,凝视,常量,进制转换,变量,数据类型,数据类型转换)
1:keyword(掌握) (1)被Java语言赋予特定含义的单词 (2)特点: 所有小写. (3)注意事项: A:goto和const作为保留字存在. B:类似于Notepad++这种高级记事本会对 ...
- Java最常用的变量定义汇总
Java最常用的数据类型有基本数据类型,字符串对象,数组,基本数据类型又分为:数值型(包括整形和浮点型),字符型,布尔型,下面用一个简单的程序把这些数据类型汇总一下 public class Java ...
- [置顶] JAVA概述(6)常量,关键字,进制转换
21.关键字.... 变量: 就是将不确定的数据进行存储.也就是需要在内粗恩中开辟一个空间. 整数类型 1个字节 byte 占 8位 -128~~~127 2 ...
- java中把字节数组转换为16进制字符串
把字符串数组转换为16进制字符串 import java.security.MessageDigest; public class StringUtil { public StringUtil() { ...
- Java 将字节数组转化为16进制的多种方案
很多时候我们需要将字节数组转化为16进制字符串来保存,尤其在很多加密的场景中,例如保存密钥等.因为字节数组,除了写入文件或者以二进制的形式写入数据库以外,无法直接转为为字符串,因为字符串结尾有\0,当 ...
- java标签(label)求16进制字符串的整数和 把一个整数转为4个16进制字符表示
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #4f76cb } p.p2 { margin: 0.0px 0. ...
- Java 包装类及其与String转换、进制转换
一.包装类 1.基本类型和引用类型 Java中的基本类型我们都知道有8种,但是作为基本类型限制功能的发挥,例如整形转String类型等可能需要类方法实现会更加简便.那么八个基本类型对应八个包装类,即引 ...
随机推荐
- OpenSSL aes加解密实例+base64编解码
OpenSSL aes加解密简单实例+base64编解码 #include <stdio.h> #include <string.h> #include <memory. ...
- Go defer使用
defer使用语法 //defer后面必须是函数调用语句或方法调用语句,不能是其他语句,否则编译器会出错. package main import ( "fmt" ) func f ...
- 一道国外前端面试题引发的Coding...
刚刚看到CSDN微信公众号一篇文章,关于国外程序员面试前端遇到的一道测试题,有点意思,遂写了下代码,并记录一下~ 题目是这样的: ['Tokyo', 'London', 'Rome', 'Donlon ...
- [考试反思]1027csp-s模拟测试90:自我
其实这套题很好. 但是这次,在T1爆炸的同时,T2和T3并没有出现能弥补的表现. 在AK仍然存在的同时,我居然连一个AC都没有. 所以最后就是一无是处的一场. 考试结束前估分:100+100+30=2 ...
- 卡特兰数&&prufer序列&&BSGS水题集
首先说一下BSGS的一个坑点: 解方程A^x≡B(mod p) 需要特判一个东西=>A%p==B%p==0? 如果相等的话puts("1")反之则无解. 因为如果A%p=0, ...
- AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层
AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层 AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层我理解的图层的作用大概是把 ...
- MQ基本应用场景
简介 消息队列 MQ 既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积.高吞吐.可靠重试等特性. 应用场景 削峰填谷:诸如秒杀.抢红包.企业开门红等大型活动时皆 ...
- 深入讲解 Laravel 的 IoC 服务容器
众所周知,Laravel 控制反转 (IoC) / 依赖注入 (DI) 的功能非常强大.遗憾的是, 官方文档 并没有详细讲解它的所有功能,所以我决定自己实践一下,并整理成文.下面的代码是基于 Lara ...
- win10 visual studio 2017环境中安装CUDA8
从https://developer.nvidia.com/cuda-toolkit-archive下载CUDA 8 安装 从https://developer.nvidia.com/gamework ...
- 通过canvas合成图片
通过canvas合成图片 效果图 页面布局部分 两个图片以及一个canvas画布 <img src="https://qnlite.gtimg.com/qqnewslite/20190 ...