重要的基础内容
编译与运行
原理机制
实操
一、 创建一个.java文件
在其中编辑如下内容:
public class First{
public static void main(String[] args)
{
System.out.println("Hello World");
}
}
注意:.java文件名与类名存在以下几点关系 |
---|
1..java文件名必须与类名一致; |
2.如果文件中只有一个类,文件名必须与类名一致; |
3.一个.java文件中只能有一个public类; |
4.如果文件中不止一个类,文件名必须与public类名一致; |
5.如果文件中不止一个类,而且没有public类,文件名可与任一类名一致。 |
二、 利用javac编译
命令行中输入
javac Frist.java
运行后发现同一目录生成了一个.class文件
三、运行
命令行中输入
java Frist
结果如下:
注意 : First不加.class扩展名
标识符命名规则
与C的区别——标识符可以由 美元符($) 组成。尽管 $是合法的,但不要在自己的代码中使用!
常量
用 关键字final指示常量。
变量类型
float
float数据后必须带f 列如
float a = 21.3f;
(没有后缀的浮点数默认double类型)
boolean
布尔型,但值只有true、false ,不能为1或0。
默认值为 false。
枚举
public class Test {
enum Size {S,M,L};
public static void main(String[] args){
Size x=Size.S;
System.out.println(x);
}
}
输出:S
String
不可变的性质
String 类没有提供用于修改字符串的方法。不能直接修改!!
切片——substring()
public class Test {
public static void main(String[] args){
String s = "abcd123456";
String s1 = s.substring(2,6);
System.out.println(s1);
}
}//输出cd12
拼接
+
public class Test {
public static void main(String[] args){
String a = "老铁";
int b = 666;
System.out.println(a+b);
}
}//老铁666
多字符串连接—— join()
public class Test {
public static void main(String[] args){
System.out.println(String.join("~","加","油","奥","利","给"));
}
}//加~油~奥~利~给
检测两字符串是否相等——equals()
s.equal s(t)
如果字符串s 与字符串t 相等, 则返回true ; 否则, 返回false.
不区分大小写,可以使用equalsIgnoreCase 方法。
一定不要使用==运算符检测两个字符串是否相等!
强制类型转换
float f = 1.1f;
int i = (int)f;
简单的输入(Scanner)
import java.util.Scanner;//在类的声明之前,引入扫描仪(Scanner)
Scanner input = new Scanner(System.in);//在方法中创建一个扫描仪
int i = input.nextInt();//通过扫描仪获取从键盘输入的数据
next()与nextLine()的区别
next() | nextLine() |
---|---|
1、一定要读取到有效字符后才可以结束输入。 | 1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。 |
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。 | 2、可以获得空白。 |
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。 | |
next() 不能得到带有空格的字符串。 |
输入检查—hasNextXxx()
if (scan.hasNextInt()) {
// 判断输入的是否是整数
i = scan.nextInt();
// 接收整数
System.out.println("整数数据:" + i);
} else {
// 输入错误
System.out.println("输入的不是整数!");
}