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 ...
随机推荐
- .Net实战之反射操作篇
1.上一讲中描述了反射中常见的类,仅仅是描述类与反射之间的关系. 但是实际是对数据的操作, 在反射中,数据如何操作? [MyTable("T_UserInfo")] publ ...
- 【DVWA】【SQL Injection(Blind)】SQL盲注 Low Medium High Impossible
1.初级篇 Low.php 加单引号提交 http://localhost/DVWA-master/vulnerabilities/sqli_blind/?id=1'&Submit=Submi ...
- Java学习3_一些基础3_16.5.7
字符串的一些常用方法: int length() String replace(CharSequence oldString,CharSequence newString) 用新字符串代替原字符串,返 ...
- 【Linux】Tomcat安装及端口配置
安装环境 :Linux(CentOS 64位) 安装软件 : apache-tomcat-9.0.20.tar.gz(下载地址http://tomcat.apache.org/) 一:JDK安装配置 ...
- Redis系列(一)--基础API
Redis:Remote Dictionary Server 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件.C语言实现,单线程 Redis特性: 1.速度快 ...
- 02Oracle Database 安装,卸载,系统服务,系统组件及系统表空间
Oracle Database 安装,卸载,系统服务,系统组件及系统表空间 Oracle Database 安装 Oracle Database 卸载 Oracle Database 系统服务 Ora ...
- 02Microsoft SQL Server 安装,卸载,系统服务,系统组件及系统数据库
Microsoft SQL Server 安装,卸载,系统服务,系统组件及系统数据库 1. Microsoft SQL Server 安装 通过单击下拉框,选择浏览,然后在Active Directo ...
- 微服务网关从零搭建——(二)搭建api网关(不带验证)
环境准备 创建空的core2.1 api项目 演示使用名称APIGateWay 过程参考上一篇 完成后在appsettings.json 添加节点 "Setting": { & ...
- kdump机制和crash常见使用
kdump简介 kdump是系统崩溃的时候,用来转储运行内存的一个工具. 系统一旦崩溃,内核就没法正常工作了,这个时候将由kdump提供一个用于捕获当前运行信息的内核, 该内核会将此时内存中的所有运行 ...
- xmpp之配置Xcode(1)
介绍 ios上的XMPPFramework你能够在Xcode/iPhoneXMPP 目录找到,它只是实现了XMPP的一小部分功能. 下面主要介绍在开发XMPPFramework ios应用之前的配置工 ...