1. 程式人生 > 其它 >DQL-2.2.開始使用Dgraph-基本操作

DQL-2.2.開始使用Dgraph-基本操作

變數

//定義:可以變化的量
//Java是一種強型別語言,每個變數都必須要宣告其型別
//java變數是程式中最基本的儲存單元,其要素包括變數名,變數型別和作用域
type varName [+value] [{varName}];
// 資料型別 變數名 = 值 ;可以使用逗號隔開來宣告多個同類型變數
/* 每個變數都有型別,可以是基本型別也可以是引用型別
每個變數都必須合法;變數宣告是一條完整的語句,因此每個宣告都必須以分號結束*/
package java筆記;

public class Demo1 {

public static void main(String[] args) {
//資料型別 變數名 = 值;
//int a,b,c;
//int a=1,b=2,c=3;不提倡;要保證可讀性
String name ="niannian";
char x ='X';
double pi = 3.14;


}

}

變數作用域

//類變數;例項變數;區域性變數; 
public class Variable{
static int allClicks = 0; //類變數
String str = "hello world"; //例項變數
public void method(){
int i = 0; //區域性變數
}
}

package java筆記;

public class Demo2 {
//類變數 static(從屬於類)
static double salary = 2500;
//屬性:變數

//例項變數:作用域在類裡面方法外面(從屬於物件);如果不自行初始化輸出這個型別的預設值
//布林值:預設是false
//除了基本型別,其餘預設值是null
String name;
int age;


//main方法
public static void main(String[] args) {//pvsm

//區域性變數:必須宣告和初始化值(只在main方法中有效,從屬於方法)
int i = 10;
System.out.println(i);

//變數型別 變數名字 = new Demo2();
Demo2 demo2 = new Demo2();
System.out.println(demo2.age);
System.out.println(demo2.name);

//類變數 static
System.out.println(salary);



}
//其他方法

}

常量

//定義:初始化後不改變值;一種特殊的變數
final 常量名 = 值;
final double PI=3.14;//常量名一般使用大寫字元

package java筆記;

public class Demo3 {
static final double PI = 3.14;
//修飾符,不存在先後順序static靜態的
final static double radius = 3.0;

public static void main(String[] args) {
System.out.println(PI);

}

}

變數的命名規範

所有變數,方法,類名:見名知意

類成員變數:首字母小寫和駝峰原則:monthSalary 除了第一個單詞以外,後面的單詞首字母大寫 lastname LastName

區域性變數:首字母小寫和駝峰原則

常量:大寫字母和下劃線:MAX_VALUE

類名:首字母大寫和駝峰原則:Man,GoodMan

方法名:首字母小寫和駝峰原則:run(),runRun()

運算子

算術運算子:+ - * / % -- ++
賦值運算子:=
關係運算符: > < >= <= == != instanceof(二元運算子,判斷一個引用型別變數所指向的物件是否是一個類(或介面。抽象類,父類)的例項,即左邊的物件是不是右邊的類的例項)

邏輯運算子: && || ! (與或非)

位運算子 : & | ^ ~ >> << >>>

條件運算子?:

擴充套件賦值運算子: += -= *= /=

優先順序(): 單目乘除為關係,邏輯三目後賦值
  • 單目運算子: + - ++ --

  • 乘除:算數單目運算子 * 、 % + -

  • 為:位移單目運算子 << >>

  • 關係: 關係單目運算子 > , <, >= ,<=,== !=

  • 邏輯:邏輯單目運算子 && , || ,!=

  • 三目:三木單目運算子 A>B?X:Y

  • 賦值: =

package operator;

public class Demo1 {
public static void main(String[] args) {
//二元運算子
// ctrl +D :複製當前行到下一行
int a = 10;
int b = 20;
int c = 25;
int d = 25;

System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/(double)b);//a/b得到小數,而a,b均為整數型別,如果不強制轉換結果會出錯為0,自動省略小數點後面的數字

}

}
package operator;

public class Demo2 {

//算術運算子:+ - * 、 % == --
public static void main(String[] args) {
// TODO Auto-generated method stub
long a =123123123123123L;
int b = 123;
short c = 10;
byte d = 8;
int x = 20;
int y = 21;

System.out.println(y % x);//取餘或者模運算

System.out.println(a+b+c+d);//如果存在Long則結果輸出為long型別,如果不是則為int型別;如果有double 則為double 型別;
//低——>高: byte,char,short->int->long->float->double
System.out.println(b+c+d);
System.out.println(c+d);

}

}
package operator;

public class Demo3 {

public static void main(String[] args) {
// TODO Auto-generated method stub
//關係運算符返回結果:正確 錯誤 布林值
//會與if 使用
int a =10;
int b = 20;
int c =21;

System.out.println(c%a);//取餘或者模運算

System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
}

}
package operator;

public class Demo4 {

public static void main(String[] args) {
//++ -- 自增 自減 一元運算子
int a =3;
int b=a++;//執行完這行程式碼後,先給b賦值,再自增
//a++ a = a+1;
// a= a+1
System.out.println(a);
int c=++a;//執行完這行程式碼前,先自增,再給b賦值

System.out.println(a);
System.out.println(a);
System.out.println(b);
System.out.println(b);
System.out.println(c);
System.out.println(c);

//冪運算 很多運算會使用工具類操作!

//Math類提供很多運算
double pow = Math.pow(3,2);//3^2=9
System.out.println(pow);

String s = "Hello";
int[] t = {1,2};
if(s instanceof String) {
System.out.println("true");
}
if (s instanceof Object) {
System.out.println("true");
}
if (t instanceof int[]) {
System.out.println("true");
}
}

}
package operator;

//邏輯運算子
public class Demo5 {

public static void main(String[] args) {
// 與(and) 或(or) 非(取反)
boolean a = true;
boolean b = false;
System.out.println("a && b:" + (a&&b));//邏輯與運算:兩個變數都為真,結果才為true
System.out.println("a || b:" + (a||b));//邏輯或運算:兩個變數都為假,結果才為false
System.out.println("! (a&&b):" + !(a&&b));//如果是真,則為假;如果是假,則為真


System.out.println("------------------");

System.out.println(a&&b);


System.out.println("---------------------------");


//短路運算 b&&a :b為假,就不需要進行下面運算了,即為短路運算
int c =5;
boolean d = (c<5)&&(c++<4);
System.out.println(d);
System.out.println(c);
//短路,只算到c<5 ,下面不執行,所以c=5

boolean e = (c==5)&&(c++ == 4);
System.out.println(e);
System.out.println(c);
//沒有短路
}

}
package operator;

public class Demo6 {

public static void main(String[] args) {

/*位運算:二進位制
*A = 0011 1100
*B = 0000 1101
*--------------------------------------------
*A&B 0000 1100(兩個位都為1結果為1,否則為0)與
*A/B 0011 1101(兩個位都為0結果為0,否則為1)或
*A^B 0011 0001(兩位相同為0,不相同為1)
*~B 1111 0010 取反
*
*
*問:2*8 怎樣運算最快 2*2*2*2
*<<左移 相當於 *2
* 效率極高
*>>右移 相當於 /2
*
*0000 0000 0
*0000 0001 1
*0000 0010 2
*0000 0011 3
*0000 0100 4
*0000 1000 8
*0001 0000 16
*/
}

}
package operator;

public class Demo7 {

public static void main(String[] args) {
int a = 10;
int b = 20;

a+=b;//a = a + b
a-=b;// a = a - b

System.out.println(a);

//字串連線符 +
System.out.println(a+b);
//問: (""+a+b) 與(a+b+"")有什麼區別?
System.out.println(""+a+b); //"" 表示字串,String型別,在+兩側出現字串型別 ,會是自動將另一個運算元都轉換成字串型別,再進行連結
System.out.println(a+b+"");//a,b在字串前面,依舊進行連線,所以結果為30
}

}
package operator;

//三元運算子
public class Demo8 {

public static void main(String[] args) {
// x ? y: z
//如果x==true ,則結果為 y,否則結果為z

int score = 80;
String type = score < 60 ?"不及格":"及格"; //必須掌握
System.out.println(type);
System.out.println("------------------------");
int grade = 50;
String type2= grade < 60 ?"不及格":"及格";
System.out.println(type2);
//if




}

}