JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)
Java基础语法(变量、常量、数据类型、运算符与数据类型转换)
1、变量
Java中。用户能够通过指定数据类型和标识符来声明变量。其基本的语法为:
DataType identifier;
或
DataType identifier = value;
当中。DataType是变量类型。如int/string/char/double/boolean等。identifier是变量名称。即标识符;value就是声明变量的值。
注:
a、标识符由数字0-9、大写和小写字母、下划线、美元符号、人民币符号以及全部在十六进制0xc0前的ASCII码组成;
b、类或结构中的变量。若没有显示地初始化。则默认初始值为0;方法中的变量必须显示地初始化,否则出错。
变量依照作用域的不同能够分为:类变量、局部变量、方法參数变量、异常处理參数变量。
演示样例代码例如以下:
/********************************************************************************
* "类变量"的用法演示样例代码*/ class ClassVariable {
int price=100; //定义类变量price
String name; //定义类变量name
int num; //定义类变量num
} public class Grammar {
public static void main(String[] args) {
ClassVariable c = new ClassVariable();
System.out.println("price="+c.price);
System.out.println("name="+c.name);
System.out.println("num="+c.num);
}
} /////////////////////////////////////
/*
* "局部变量"的用法演示样例代码*/ public class Grammar {
public static void main(String[] args) {
int a=7;
if (5>3) {
int s=3;
System.out.println("s="+s);
System.out.println("a="+a);
}
// System.out.println("s="+s);
System.out.println("a="+a);
}
} ///////////////////////////////////// /*
* "方法參数变量"的用法演示样例代码*/ public class Grammar {
public static void testFun(int s) {
System.out.println("s="+s);
}
public static void main(String[] args) {
testFun(100);
}
} /////////////////////////////////////
/*
* "异常处理參数变量"的用法演示样例代码*/ public class Grammar {
public static void test() {
try{
System.out.println("Hello! Exception!");
}
catch (Exception e){ //异常处理块。參数为Exception类型
e.printStackTrace();
}
}
public static void main(String [] args) {
test();
}
}
2、常量
在C/C++中,要以constkeyword定义一个常量,而在JAVA中const不是keyword符。而是一个保留字符。它使用finalkeyword来定义一个常量,其语法例如以下:
final dataType constantName;
当中,final是定义常量的keyword。dataType是指明常量的数据类型,constantName是常量的名称。
注:
a、在定义常量时须要对其进行初始化;
b、final不仅能够用来修饰基本数据类型的常量。还能够用来修饰对象的引用或者方法。
c、在JAVA语言中,为了与变量差别。常量一般都採用大写字符。
演示样例代码例如以下:
/********************************************************************************
* "常量"的用法演示样例代码*/ public class Grammar {
public static void main(String [] args) {
final double PI=3.1415926;
int r=10;
double c=2*PI*r;
System.out.println("圆的周长="+c);
// PI=10;
}
}
3、数据类型
JAVA语言的数据类型主要分为两大类:基本数据类型(字节型byte、字符型char、布尔型boolean、单精度浮点型float、双精度浮点型double、整型int、短整型short、长整型long)和引用数据类型(数组、类class、接口interface)。
详细例如以下图:
注:
a、全部的基本数据类型的大小都已经明白规定好,在各种不同的平台上都保持不变,这一特点有助于提高JAVA程序的移植性。
b、引用数据类型是由用户自己定义的,用于限制其它数据的类型。JAVA语言中不支持C++中的指针类型、结构类型、联合类型和枚举类型。
c、对于浮点型数据来说,默认是double。若想被看做float,则须要在数据后面加上f或F。
d、Java语言中的字符类型使用两个字节的Unicode编码表示,字符通经常使用十六进制表示,范围从\u0000到\uFFFF。即0到65535。
演示样例代码例如以下:
/********************************************************************************
* "整数类型"的用法演示样例代码*/ public class Grammar {
public static void main(String [] args) {
byte a=10;
short b=20;
int c=30;
long d=40;
long sum=a+b+c+d;
System.out.println("10+20+30+40="+sum);
}
} /*
* "浮点类型"的用法演示样例代码*/ public class Grammar {
public static void main(String [] args) {
double x=10.23;
int a=2;
float sum=(float)x*a;
System.out.println("sum="+sum);
}
} /*
* "布尔类型"的用法演示样例代码*/ public class Grammar {
public static void main(String [] args) {
boolean a=true;
System.out.println("a="+a);
}
} /*
* "字符类型"的用法演示样例代码*/ public class Grammar {
public static void main(String [] args) {
char a='A';
char b='B';
System.out.println("a+b="+(a+b));
}
}
4、运算符
运算符包含算术运算符、比較运算符、逻辑运算符、赋值运算符、条件运算符、自增自减运算符、位运算符。还要考虑到运算符的优先级别。
注:
a、自增自减运算符。比如i++和++i,其规则是谁在前先算谁。
b、在位运算符中,按位异或的运算符是^,这一点要特别注意。
演示样例代码例如以下:
/********************************************************************************
* "算术运算符"的用法演示样例代码*/ import java.util.Scanner; // 代码输入Scanner后,系统会自己主动增加这段代码
public class Grammar {
public static void main(String [] args) {
Scanner input= new Scanner(System.in); //系统输入
System.out.println("请输入第一个数:");
int num1=input.nextInt();
System.out.println("请输入第二个数:");
int num2=input.nextInt();
float add=num1+num2;
float sub=num1-num2;
float multi=num1*num2;
int div=num1/num2;
float rem=num1%num2;
System.out.println("add="+add+", sub="+sub+", multi="+multi+", div="+div+", rem="+rem); }
} /*
* "优先级"的用法演示样例代码*/ public class Grammar {
public static void main(String [] args) {
int a=10;
int b=5;
int c=12;
int result=a+b-(a++)*(b--)%c;
System.out.println("result="+result);
}
}
5、数据类型转换
数据类型转换分为隐式转换(自己主动类型转换)和显式转换(强制类型转换)两种。
自己主动类型转换的实现须要同一时候满足两个条件:一是两种数据类型彼此兼容,第二个是目标类型的取值范围要大于源数据类型。即低级数据类型转换为高级类型数据。
转换规则例如以下:
(1)、数值型数据的转换:byte->short->int->long->float->double。
(2)、字符型转换为整型:char->int。
以上数据类型的转换遵循从左到右的转换顺序,终于转换成表达式中表示范围最大的变量的数据类型。
显示转换:当两种数据类型不兼容或类型的取值小于源类型时,自己主动转换无法进行,这时就须要进行强制类型转换。
6、实例演示——把整数转换为二进制数
參考代码例如以下:
/********************************************************************************
* "实战——把整数转换为二进制"——难度系数:★★★*/ public class Grammar { //第一步:定义一个类
static String ConvertIntToBinary(int n) //第二步:定义一个方法
{
String binary=""; //保存二进制字符串
int i=n; //声明i变量。将參数n的值赋予它
int m=0; //声明初始化变量m
while (i>1)
{
i=n/2;
m=n%2;
binary =Integer.toString(m)+binary; //加入到binary字符串中
n=i;
}
if (i>0) binary="1"+binary;
return binary;
}
public static void main(String [] args) {
System.out.println("14转换为二进制为:"+ConvertIntToBinary(14));
System.out.println("15转换为二进制为:"+ConvertIntToBinary(15));
}
}
JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)的更多相关文章
- Java学习笔记之---基础语法
Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...
- Java学习之旅基础知识篇:数据类型及流程控制
经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...
- java学习笔记之基础语法(一)
1.java语言基础由关键字.标识符.注释.常量和变量.运算符.语句.函数和数组等组成. 2.1关键字 定义:被java语言赋予了特殊含义的单词 特点:关键字中所有的字母都是小写. 2.2用于定义数据 ...
- java学习笔记之基础语法(二)
1.数组: 概念:同一种类型数据的集合,其实,数组就是一个容器 优点:可以方便的对其进行操作,编号从0开始,方便操作这些元素. 2,数组的格式 元素类型[]数组名=new 元素类型[数组元素个数]: ...
- Java学习笔记之基础语法(数据类型)
8种基本数据类型 整型: byte[1字节] short[2字节] int[4字节] long[8字节] 1,四种整型之间的区别:申 ...
- 从零开始学Java (三)基础语法
1. 基本数据类型 整数类型:byte,short,int,long 浮点数类型:float,double 字符类型:char 布尔类型:boolean java最小单位是bit,一个byte占用8个 ...
- Java学习笔记之基础语法(顺序,条件,循环语句)
顺序结构:自上而下 条件分支选择结构: if条件语句 1,一旦某一个分支确定执行以后,其他分支就不会执行.if后面的条件必须是boolean类型 2,if 后面如果不加大括号,默认相邻的下一 ...
- Java学习笔记之基础语法(数组)
数组 数组概述:是具有相同数据类型的数据的集合 数组的定义:数据类型 数组名 [] 数组特点: 1,数组是引用数据类型. 2,数组值用大括号,元素之间用逗号隔开,元素的个数是0-N个 3,数组长度是固 ...
- java学习(三) java 中 mongodb的各种操作
一. 常用查询: 1. 查询一条数据:(多用于保存时判断db中是否已有当前数据,这里 is 精确匹配,模糊匹配 使用 regex...) public PageUrl getByUrl(String ...
随机推荐
- C++ const学习
概念 const就是为了直接表达“不变化的值”这一概念.也就是说该值只可读,不可直接写. 由于不可以修改,所以const常量在声明的时候必须初始化 const int a; //error exter ...
- 2057. [ZLXOI2015]殉国
★☆ 输入文件:BlackHawk.in 输出文件:BlackHawk.out 评测插件 时间限制:0.05 s 内存限制:256 MB [题目描述] 正义的萌军瞄准了位于南极洲的心灵 ...
- Filesystem Hierarchy Standard (Unix, Linux etc)
http://www.pathname.com/fhs/ /boot -- Static files of the boot loader Purpose: contains everything r ...
- HDU_2844_(多重背包)
Coins Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- 外观模式(Facade)-子系统的协作与整合-接口模式
对子系统进行整合,对外提供更强大或更便捷的接口. 在一个模块和几个子系统进行通信时考虑. 什么是外观模式? 外观模式(Facade),为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口 ...
- 梦想CAD控件系统变量说明
这里介绍一些常用系统变量有String.double.long.McGePoint3d等类型,其中有部分系统变量是随图纸保存,再次打开时就会读取图纸中的系统变量,有些系统变量不随图纸保存,其作用来控制 ...
- JavaScipt30(第三个案例)(主要知识点:css变量)
承接上文 https://www.cnblogs.com/wangxi01/p/10641210.html,下面是第三个案例: 附上项目链接: https://github.com/wesbos/Ja ...
- ThinkPHP---ue编辑器
[一]简介 (1)介绍 一款百度开发的JS插件 ue编辑器,全称Ueditor(翻译为你的编辑器),百度开发的在线编辑器,是一款在线编辑器软件,在线编辑器又称为“富文本编辑器”. 国外也有一款类似的编 ...
- wpf 自定义单选按钮 RadioButton
新建RadioButtonEx.cs public class RadioButtonEx : RadioButton { public Geometry SelectIcon { get { ret ...
- Python学习之LeetCode刷题之路——简单题【1、7、9】
1.两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个 ...