變量、運(yùn)算符、表達(dá)式、輸入與輸出
tip:[start]編程是一種控制計(jì)算機(jī)的方式,和我們平時(shí)雙擊打開文件、關(guān)機(jī)、重啟沒有任何區(qū)別——閆學(xué)燦tip:[end]
1.編寫一個(gè)簡單的Java程序–手速練習(xí)
/*
step1:創(chuàng)建一個(gè)java源文件:HelloWorld.java
將編寫的java代碼保存在以".java"結(jié)尾的源文件中
*/
//第三個(gè)單詞必須和文件名一樣, 類名大寫
public class HelloWorld {
//psvm main方法, 函數(shù)名小寫
public static void main(String[] args){
//sout 輸出語句
System.out.println("Hello World!");
}
}
2.語法基礎(chǔ)
2.1 變量
// 變量必須先定義,才可以使用。不能重名。
// 變量定義的方式:
public class Main {
public static void main(String[] args) {
int a = 5;
int b, c = a, d = 10 / 2;
}
}
-
內(nèi)置數(shù)據(jù)類型:
類型 字節(jié)數(shù) 舉例 byte整數(shù) 1 123 short整數(shù) 2 12345 int整數(shù) 4 123456789 long整數(shù) 8 1234567891011L float浮點(diǎn)數(shù) 4 1.2F double浮點(diǎn)數(shù) 8 1.2, 1.2D boolean 1 true or false char字符類型 2 'a'-97 'A'-65 '0'-48 - 什么是有效數(shù)字?比如1.234*10^5,有效數(shù)字是四位
- 有效數(shù)字為6到7位。意味著前6、7位是精確值,后面的是不精確的近似值
- 顯示表示float,后面加f或F,顯示表示double,后面加d或D
-
常量:
- 常量是為了自己寫代碼,以及代碼間的協(xié)作,賦值后不能再修改
- 使用final修飾:
final int N = 110;
-
類型轉(zhuǎn)化:文章來源:http://www.zghlxwxcb.cn/news/detail-749037.html
- 顯示轉(zhuǎn)化:
int x = (int)'A';
- 隱式轉(zhuǎn)化:
double x = 12, y = 4 * 3.3;
- 顯示轉(zhuǎn)化:
2.2 運(yùn)算符
A = 10, B = 20
文章來源地址http://www.zghlxwxcb.cn/news/detail-749037.html
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
+ | 把兩個(gè)數(shù)相加 | A + B 將得到 30 |
- | 從第一個(gè)數(shù)中減去第二個(gè)數(shù) | A - B 將得到 -10 |
* | 把兩個(gè)數(shù)相乘 | A * B 將得到 200 |
/ | 分子除以分母 | B / A 將得到 2 |
% | 取模運(yùn)算符,向零整除后的余數(shù),注意余數(shù)可能為負(fù)數(shù) | B % A 將得到 0 |
++ | 自增運(yùn)算符 | A++:先取值后加1;++A:先加1后取值 |
-- | 自減運(yùn)算符 | A--:先取值后減1;--A:先減1后取值 |
+= | 第一個(gè)數(shù)加上第二個(gè)數(shù) | A = A + B 可以簡寫為 A += B |
-= | 第一個(gè)數(shù)減去第二個(gè)數(shù) | A = A - B 可以簡寫為 A -= B |
*= | 第一個(gè)數(shù)乘以第二個(gè)數(shù) | A = A * B 可以簡寫為 A *= B |
/= | 第一個(gè)數(shù)除以第二個(gè)數(shù) | A = A / B 可以簡寫為 A /= B |
%= | 第一個(gè)對第二個(gè)數(shù)取余數(shù) | A = A % B 可以簡寫為 A %= B |
2.3 表達(dá)式
// 整數(shù)的加減乘除四則運(yùn)算:
public class Main {
public static void main(String[] args) {
int a = 6 + 3 * 4 / 2 - 2;
System.out.println(a);
int b = a * 10 + 5 / 2;
System.out.println(b);
System.out.println(23 * 56 - 78 / 3);
}
}
// 浮點(diǎn)數(shù)(小數(shù))的運(yùn)算:
public class Main {
public static void main(String[] args) {
double x = 1.5, y = 3.2;
System.out.println(x * y);
System.out.println(x + y);
System.out.println(x - y);
System.out.println(x / y);
//浮點(diǎn)數(shù)的直接比較判斷可能會有誤差
if(x==y)
//一般通過計(jì)算兩個(gè)數(shù)的差的絕對值和一個(gè)很小的數(shù)進(jìn)行判斷來比較
if(Math.abs(x-y)<1e-8)
}
}
//整型變量的自增、自減:
public class Main {
public static void main(String[] args) {
int a = 1;
int b = a ++ ;
System.out.println(a + " " + b);
int c = ++ a;
System.out.println(a + " " + c);
}
}
2.4 輸入
// 方式1:效率較低,輸入規(guī)模較小時(shí)使用(輸入的數(shù)在10的5次方以內(nèi))。
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
String str = sc.next(); // 讀入下一個(gè)字符串,遇到空白字符就會輸入結(jié)束(空格、回車、制表符等等)
String line = sc.nextLine(); // 讀入下一行,不會結(jié)束
int x = sc.nextInt(); // 讀入下一個(gè)整數(shù)
float y = sc.nextFloat(); // 讀入下一個(gè)單精度浮點(diǎn)數(shù)
double z = sc.nextDouble(); // 讀入下一個(gè)雙精度浮點(diǎn)數(shù)
}
}
// 方式2:效率較高,輸入規(guī)模較大時(shí)使用,注意需要拋異常。
// 注意拋出異常,BufferedWriter輸入整數(shù)要手動輸入
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
System.out.println(str);
}
}
2.5 輸出
- System.out.printf()中不同類型變量的輸出格式:
int: %d
-
float: %f
,默認(rèn)保留6位小數(shù) -
double: %f
,默認(rèn)保留6位小數(shù) -
char: %c
,回車也是一個(gè)字符,用'\n'
表示 String: %s
// 方式1:效率較低,輸出規(guī)模較小時(shí)使用。
public class Main {
public static void main(String[] args) throws Exception {
System.out.println(123); // 輸出整數(shù) + 換行
System.out.println("Hello World"); // 輸出字符串 + 換行
System.out.print(123); // 輸出整數(shù)
System.out.print("yxc\n"); // 輸出字符串
System.out.printf("%04d %.2f\n", 4, 123.456D); // 格式化輸出,float與double都用%f輸出,%04,前面不足四位會補(bǔ)0,在輸出年份是常用,%4d占4位,不足4位在前面補(bǔ)空格,%-4d,不足四位在后面補(bǔ)空格
//readLine只能讀一行字符串,想要讀整數(shù)的話,需要手動操作將字符串轉(zhuǎn)化成int,如果有空格,需要手動先分割出來
String[] str = br.readLine().split(" ");
int x = Integer.parseInt(str[0]);
int y = Integer.parseInt(str[1]);
}
}
// 方式2:效率較高,輸出規(guī)模較大時(shí)使用,注意需要拋異常。
// 注意最后要需要手動刷新緩沖區(qū),如果不刷新有些時(shí)候會獲取不到輸出
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws Exception {
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
bw.write("Hello World\n");
bw.flush(); // 需要手動刷新緩沖區(qū)
}
}
到了這里,關(guān)于Java-01變量、運(yùn)算符、表達(dá)式、輸入與輸出的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!