文章目录

  • 始于足下!
  • 一、第一个java程序,了解java
  • 二、变量
  • 三、常量
  • 四、数据类型
  • String
  • 1、计算字符串长度
  • 2、equals()和==之间的比较
  • 3、字符串连接
  • StringBuilder
  • 五、运算符
  • 算数运算符
  • 位运算符
  • 逻辑运算符
  • 关系运算符
  • 符号运算优先级
  • 六、小练习
  • 计算两数的和
  • 七、java关键字和语句
  • 八、java中的方法


始于足下!

参考链接

一、第一个java程序,了解java

//定义一个learn1的类,这个类必须和j源代码文件名相同。
public class learn1 {      
    //static 静态的 属于类的方法 即访问它不需要实例对象就能访问, void 即这个方法没有返回值
    public static void main(String[] args){    //main方法是程序的入口
        System.out.println("HelloWorld!");
    }
}

由于我是使用编译器写的,写完以后在对应目录下回生成一个.class文件,该文件表示代码已经经过编译,运行程序方式如下:

java ssh培训 java实战培训_后端

二、变量

java中变量需要先声明

int a = 1;
public class VarTest{
    public static void main (String[] args){
        int a = 5;
        System.out.println(a);
    }
}

三、常量

常量的值是不能被修改的。Java 中的 final 关键字可以用于声明属性(常量),方法和类。当 final 修饰属性时,代表该属性一旦被分配内存空间就必须初始化,它的含义是“这是无法改变的”或者“终态的”。在变量前面添加关键字 final 即可声明一个常量。在 Java 编码规范中,要求常量名必须大写。

final double PI = 3.141592652;
final double PI;
PI = 3.141592652;
public class FinalVar{
    public static void main(String[] args){
        final String THE_STRING = "shiyanlou";
        System.out.println(THE_STRING);
    }
}

四、数据类型

java中一共八种数据类型

整数
byteshortintlong 四种基本数据类型表示整数,需要注意的是 long 类型,使用 long 修饰的变量需要在数值后面加上 L 或者 l,比如 long num = 1L;,一般使用大写 L,为了避免小写 l 与数值 1 混淆。

浮点数
floatdouble 类型表示浮点数,即可以表示小数部分。需要注意的是 float 类型的数值后面需要加上 F 或者 f,否则会被当成 double 类型处理。double 类型的数值可以加上 D 或 d,也可以不加。

char 类型
char 类型用于表示单个字符。需要将字符用单引号括起来char a = ‘a’,char 可以和整数互相转换,如果字符 a 也可以写成char a = 97。也可以用十六进制表示char a = ‘\u0061’。

boolean 类型

boolean类型(布尔类型)用于表示真值 true或者假值 false,Java 中布尔值不能和整数类型或者其它类型互相转换

java ssh培训 java实战培训_System_02

String

字符串是常量,它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。

String s0 = "abc";

String s1 = new String("abd");

1、计算字符串长度

int len0 = s0.length();
int len1 = s1.length();

2、equals()和==之间的比较

字符串比较
equals() 方法,该方法的作用是判断两个字符串对象的内容是否相同。如果相同则返回 true,否则返回 false。

如果想忽略大小写关系,则可以用equalsIgnoreCase()方法

==方法:该方法比较的是连个对象在内存中存储的地址是否一样、

String s1 = "abc";
String s2 = new String("abc");
boolean b = (s1 == s2);

变量 b 的值是 false,因为 s1 对象对应的地址是 “abc” 的地址,而 s2 使用 new 关键字申请新的内存,所以内存地址和 s1 的 “abc” 的地址不一样,所以获得的值是 false。

3、字符串连接

字符串连接有两种方法
1、使用+ 2、使用concat()方法

String s0 = "HelloWorld";
String s1 = "!!!";
String s2 = s0 + s1;
String s3 = s0.concat(s1);
System.out.println(s2);
System.out.println(s3);
public class StringBuilderTest {
    public static void main(String[] args){
        StringBuilder s1 = new StringBuilder();
        s1.append("java");
        StringBuilder s2 = new StringBuilder(5);
        StringBuilder s3 = new StringBuilder("shiyanlou");
        System.out.println("s1:" + s1.toString() + "\tcap:" + s1.capacity());
        System.out.println("s2:" + s2.toString() + "\tcap:" + s2.capacity());
        System.out.println("s3:" + s3.toString() + "\tcap:" + s3.capacity());
    }
}

StringBuilder

String 是无法被修改的,对 String 的修改,其实是新建了一个 String 对象。如果需要修改字符串的内容,可以使用 StringBuilder。它相当于一个存储字符的容器。
StringBuilder的初始化方法

# 构造一个不包含任何字符且初始容量为 16 的 StringBuilder
StringBuilder a = new StringBuilder();

# 构造一个不包含任何字符且容量为 cap 的 StringBuilder
StringBuilder b = new StringBuilder(int cap);
# 构造一个 StringBuilder,内容初始化为 str
StringBuilder  c = new StringBuilder(String str);

五、运算符

算数运算符

位运算符

Java 定义了位运算符,应用于整数类型 (int),长整型 (long),短整型 (short),字符型 (char),和字节型 (byte) 等类型。位运算时先转换为二进制,再按位运算。

表格中的例子中,变量 a 的值为 60(二进制:00111100),变量 b 的值为 13(二进制:00001101):

java ssh培训 java实战培训_java ssh培训_03

public class BitOperation {
    public static void main(String args[]) {
        int a = 60;
        int b = 13;
        System.out.println("a & b = " + (a & b));
        System.out.println("a | b = " + (a | b));
        System.out.println("a ^ b = " + (a ^ b));
        System.out.println("~a = " + (~a));
        System.out.println("a << 2 = " + (a << 2));
        System.out.println("a >> 2 = " + (a >> 2));
        System.out.println("a >>> 2 = " + (a >>> 2));
    }
}

逻辑运算符

逻辑运算符是通过运算符将操作数或等式进行逻辑判断的语句。

表格中的例子中,假设布尔变量 a 为真(true),变量 b 为假(false):

java ssh培训 java实战培训_开发语言_04

public class LogicOperation {
    public static void main(String args[]) {
        boolean a = true;
        boolean b = false;
        System.out.println("a && b = " + (a && b));
        System.out.println("a || b = " + (a || b));
        System.out.println("!a = " + (!a));
        System.out.println("a ^ b = " + (a ^ b));
    }
}

关系运算符

关系运算符生成的是一个 boolean(布尔)结果,它们计算的是操作数的值之间的关系。如果关系是真实的,结果为 true(真),否则,结果为 false(假)。

表格中的例子中,假设变量 a 为 3,变量 b 为 5:

java ssh培训 java实战培训_java_05

public class RelationalOperation {
    public static void main(String args[]) {
        int a = 3;
        int b = 5;
        System.out.println("a == b = " + (a == b));
        System.out.println("a != b = " + (a != b));
        System.out.println("a > b = " + (a > b));
        System.out.println("a < b = " + (a < b));
        System.out.println("a >= b = " + (a >= b));
        System.out.println("a <= b = " + (a <= b));
        System.out.println("a > b ? a : b = " + (a > b ? a : b));
    }
}

符号运算优先级

java ssh培训 java实战培训_java_06

六、小练习

计算两数的和

//Scanner 类可以获取控制台输入的内容,但是需要先导入
import java.util.Scanner;
//获取输入的值
public class Sum{
    public static void main(String[] args){
        int x, y, sum;
        System.out.println("输入:");
        Scanner myObj = new Scanner(System.in);
        x = myObj.nextInt();
        y = myObj.nextInt();

        sum = x + y;
        System.out.println("输出");
        System.out.println(sum);

七、java关键字和语句

Java 的关键字对 Java 的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名。

Java 关键字有如下表所列,目前共有 50 个 Java 关键字,其中,“const” 和 “goto” 这两个关键字在 Java 语言中并没有具体含义。

java ssh培训 java实战培训_开发语言_07

八、java中的方法

public void functionName(Object arg) {
  System.out.println("Hello World.");
}

在上面的语法说明中:

1访问修饰符:代表方法允许被访问的权限范围, 可以是 publicprotectedprivate 或者省略(default) ,其中 public 表示该方法可以被其他任何代码调用。

2返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void (代表无类型);如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用return语句返回值。

3方法名:是方法的名字,必须使用合法的标识符。

4参数列表:是传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。

5方法体:方法体包含具体的语句,定义该方法的功能。
根据方法是否带参、是否带返回值,可将方法分为四类:

  • 无参无返回值方法
  • 无参带返回值方法
  • 带参无返回值方法
  • 带参带返回值方法
public class MethodDemo{
    public static void main(String[] args){
        method();
    }
    //这里要加上 static 关键字 因为静态方法只能调用静态方法
    public static void method(){
        System.out.println("方法被调用");
    }
}