Java语言基础
一、内存
内存是一块瞬时状态的存储空间,有一定的存量。Java虚拟机(Java程序)默认分配的物理内存容量是计算机的1/8。
二、打印输出语句区别
- System.out.print();
- System.out.println();
public class Test{
public static void main(String[] args){
System.out.print("Hello ");
System.out.print("World!");
}
}
打印输出
public class Test{
public static void main(String[] args){
System.out.println("Hello ");
System.out.print("World!");
}
}
打印输出
总结:System.out.println();打印后会具有自动换行功能
三、强类型语言
Java是强类型语言,即变量的类型必须与数据的类型一致。如书写
int value;
value=10.2;
会报错误
弱类型语言即与之相反。
四、基本数据类型(四类八种)
- 四类:整形(byte 、short 、int 、long)、浮点型(float 、 double)、字符型(char)、布尔型(boolean);
- 八种
类型 | 字节 | 取值范围 | 备注 |
---|---|---|---|
byte | 1 | -128~127 | 256个 |
short | 2 | -32768~32767 | 65536个 |
int | 4 | -2147483648~2147483647 | 42亿多个 |
long | 8 | -9223372036854775808~9223372036854775807 | 等价于无穷 |
float | 4 | 1.4E-45~3.4E+38 | 正负范围相同 |
double | 8 | 4.9E-324~1.7E+308 | 正负范围相同 |
char | 2 | 0~65536 | 基于Unicode字符集 |
boolean | 1 | true/false | 2个 |
特殊情况
- 在Java中所有的整数字面值的默认类型是int,当整数字面值超过int的取值范围时,则出现错误,如:
long l1=2147483648;
这时应该在定义的数值后添加L,这时系统才会认为这个数值时long类型。L大小写都可以,但小写l与1太像了,故习惯用大写L。即:
long l1=2147483648L;
- 同理,所有浮点数的默认类型是double,故在定义float类型时要在数值后面追加F(大小写都可)
float f1=1.2F;
五、ASCII编码与Unicode编码
- ASCII是美国信息交换标准代码,它是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。ASCII是最通用的信息交换标准,为英文字符设定了统一并且唯一的二进制编码。
- Unicode(万国码)为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求(其中包含了ASCII编码)。它由每个国家自己定义编码,然后由Unicode进行统一收录。
六、转义字符
转义字符 | 描述 |
---|---|
\n | 换行符(回车) |
\t | 缩进(制表位,相当于Tab ) |
\\ | 反斜线 |
\’ | 单引号 |
\" | 双引号 |
七、String字符串类型
类型 | 取值范围 | 字符编码 |
---|---|---|
String | 任何" "之间的字面值 | Unicode字符序列 |
相比于char类型,String类型可以放多个字符,代码:
String str="Hello world!";
八、自动类型提升
- 进行算术运算时
- 两个操作数有一个为double,计算结果提升为double。
- 如果操作数中没有double,有一个为float,计算结果提升为float。
- 如果操作数中没有float,有一个为long,计算结果提升为long。
- 如果操作数中没有long,有一个为int,计算结果提升为int。
- 如果操作数中没有int,均为short或byte,计算结果仍旧提升为int。
- 特殊:任何类型与String相加(+)时,实为拼接,其结果自动提升为String。
int score=100;
System.out.println("我的成绩是:"+score);
九、控制台输入
用Java实现C语言中scanf函数的功能,即从控制台输入一个数值进行运算。先贴代码:
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner input=new Scanner(System.in);
System.out.println("请输入值:");
int value=input.nextInt();
System.out.println("您输入的数值是:"+value);
}
}
-
首先需要使用 import 导入 java.util.Scanner 包;
-
声明一个 Scanner 类型的变量,Java中使用类常用方法为变量=new 类名,给变量分配空间,初始化,实例化,System.in 是获取输入流的意思。
-
使用 Scanner 类中对应的方法(区分输入数值类型):
.nextInt(); //获得整数 .nextDouble(); //获得小数 .next(); //获得字符串 .next().charAt(0); //获得单个字符
十、其他
Java语言的类型转换、算术运算符、赋值运算符、关系运算符、逻辑运算符、三元运算符与C语言使用方法相同或相近,这里不再记录。