javase

本文详细介绍了Java的特点,包括其跨平台性质、JDK与JRE的区别,以及如何运行Java程序。接着,讲解了Java的基础知识,如变量、数据类型转换、运算符以及控制结构。特别强调了类型转换中的自动转换和强制转换规则,以及逻辑运算符的使用。此外,还提到了输入输出、进制转换和位运算的概念。最后,文章涵盖了一些基本的控制结构,如if-else和switch语句。
摘要由CSDN通过智能技术生成

java查漏补缺

java特点:

跨平台:程序员写的是.java文件,javac指令编译会得到.class文件;java指令运行,可以在不同系统下jvm中运行。

jdk

包含jre

jre:java运行环境,等于jvm+java核心类库

运行

当编写完一个类后会产生.java文件,cmd中可以javac 类.java会产生.class文件;然后java 类名(不需要类.class)就可以执行代码了。

.java叫源文件,.class叫字节码文件。通过java.exe会将.class文件装载到jvm中。

2.基础

2.1前提

\t:一个制表位
\n:换行符
\\:一个\
\":一个"
\':一个'
\r:一个回车;会将后面的字替换前面的字

文档注释
author:作者,version:版本

dos
md:创建文件,rd:删除文件;dir:查看
cd /D c::切换到c盘;cd..:切换上一级;cd\:切换到根目录
cd ..\..\xx:切换到当前盘的其他目录下
tree c\::查看c盘目录
cls:清屏;exit:提出dos

相对路径、绝对路径

相对路径:…\代表文件的上一级

绝对路径:d:\xx\xx

2.2变量

结构:数据类型 变量名=数据

char:字符型’x’;String:“x”

+的作用

"100"+98+4结果为100984
运算是从左到右,左边计算如果遇到""后面就为字符串拼接

2.2.3整型

一个字节=8个bit;有一个bit要作为正负。

输入的数默认为int类型;long型常量后面要加l或L

2.2.4浮点

默认double,用float后面要加f/F;float是近似值不精准。

1.1e2:1.1乘以10的2次方;1.1E-2:1.1除以10的2次方;

浮点数除法时是近似值,差值非常小可以让他们相等。

如果是0.1f,0可以省略。

2.3java api

网址:matools.com

2.4char

表示单个字符,两个字节,可以存放汉字;

char b=‘a’;输出的是a;(int)b会输出a对应的数字。

如果是char a=97;输出的是97代表的字母a;有各种编码表。

本质:

字符型存储到计算机:'a’的码值97,97对应的二进制存储到计算机。

2.5boolean

1个字节;只有true、false。

2.6类型转换

自动类型转换:精度小的自动转换为精度大的。

在计算时,系统自动会将所有数据转换为容量最大的那种类型。

char-int-long-float-double;

byte-short-int-long-float-double;

byte/short和char之间不会相互转换,计算时先全部转换为int类型。

强制类型转换:容量大的转换为容量小的,可能会造成精度降低或溢出。

细节:强转只针对最近的计算,需要小括号提升优先级

char可以保存int的常量值,但不能保存int的变量值,需要强转。

2.7基本数量类型与string转换

基本数量类型转string:基本+“”

string转基本:通过基本类型的包装类调用parsexx方法;例Integer.parseInt(“111”)

字符串转字符:是把字符串的第一个字符得到;例x.charAt(0)。

2.8运算符

2.8.1算数

a=2;b=++a;a=3,b=3。

a=2;b=a++;a=3,b=2。

注意:

10/2:输出是2;如果用double接收是2.0;

a%b=a-a/b*b;

i=1;i=i++;输出i为1:1.t=i;2.i++;3.i=t。

i=1;i=++i;输出i为2:1(1)i=i+1;(2)t=i;(3)i=t。

2.8.2逻辑

&&与&区别:

&&:如果第一个条件为false,第二个条件不会判断,结果为false,效率高。

&:两个都会判断

||同理

注意:复合赋值运算符会进行类型转换

byte b=3;b+=2;等价于b=(byte)(b+2)

2.9输入

util包下scanner

new Scanner(System.in);然后调用他的.next()方法接收字符串数据。

nextInt();int类型数据

2.10进制

二进制:0b/0B开头

八进制:0开头

十六进制:0x/0X开头

转换:不断除直到0,然后将余数倒过来

二进制到八进制、十六:将二进制每3位一组、每4位一组

八进制转二进制:将每一位转为3位的二进制;十六进制同理

2.11位运算

原码,反码,补码

1.最高符号位:0位正,1为负

2.正数的原码,反码,补码都一样

3.负数的反码=原码符号位不变,其他取反

4.负数的补码=反码+1

5.计算机运算时以补码运算

6.看运算结果时,看原码

>>:右移相当于除2,左移相当于乘2
2&3:2,先得到2、3的补码,再&运算结果转换为十进制

3.控制结构

if;if(){}else{}

switch(表达式){

case 常量1:语句

break;

default:语句

break;

}

注意:

1.switch的表达式必须是byte,short,int,char,enum,String

2.case子句的值必须是常量

3.表达式与case类型要一致或者可以互相转换

4.default可以没有

5.没写break,程序会顺序执行到switch结尾

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值