這篇帖子是我學java的筆記第一部分
這篇帖子記錄了慕課網的課程內容以及廖雪峯網站的筆記以及菜鳥教程的。對外不是主要目的,主要是方便我自己查看筆記。。
java發展
環境變量
- JAVA_HOME 添加的
- PATH 指定添加的
- CLASSPATH 新建的,對應lib目錄
多平臺
領域多
常用關鍵字
識別符號
A:標識符不能是數字開頭
C:標識符組成爲字母、數字、下劃線_、美元符號$,不包含%
D:標識符中間不能有空格
打印hello。。。
public class HelloImooc{
public static void main(String[] args){
System.out.println("你好世界你好慕課");
System.out.println(3.14);
System.out.println(10); //數值10
System.out.println("10"); //字符串10
}
}
基本數據類型
基本數據類型是CPU可以直接進行運算的類型。Java定義了以下幾種基本數據類型:
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-mlxIn5YM-1587918795293)(./_image/2020-04-21-23-38-06.png)]
- 整數類型:byte,short,int,long
- 浮點數類型:float,double
- 字符類型:char
- 布爾類型:boolean
byte:-128 ~ 127
short: -32768 ~ 32767
int: -2147483648 ~ 2147483647
long: -9223372036854775808 ~ 9223372036854775807
float類型可最大表示3.4x1038,而double類型可最大表示1.79x10308
其餘詳情見廖雪峯教程
public class HelloWorld{
public static void main(String[] args) {
String name="愛慕課";
char sex='男';
int num=18;
double price=120.5;
boolean isOK=true;
System.out.println(name);
System.out.println(sex);
System.out.println(num);
System.out.println(price);
System.out.println(isOK);
}
}
常量、變量
public class HelloImooc{
public static void main(String[] args){
int i = 10;
System.out.println(i);
i = 20;
System.out.println(i);
常量:定義變量的時候,如果加上final
修飾符,這個變量就變成了常量
運算符
- 算數運算符
- 賦值運算符
- 比較運算符(關係)
- 邏輯運算符
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-yMZW23GW-1587918795295)(./_image/2020-04-22-10-36-51.png)] - 位運算符
- 三目運算符
鍵盤錄入
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-gZbc9N4c-1587918795296)(./_image/2020-04-22-11-04-38.png)]
import java.util.Scanner;
public class ScannerDemo{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
//輸出提示信息
System.out.println("'請輸入信息int'");
//從鍵盤輸入一個整型數據,並放到整型變量n中
int n = sc.nextInt();
//將整型數據輸出
System.out.println(n);
//輸出提示信息
System.out.println("'請輸入信息Double'");
//從鍵盤輸入一個浮點型數據,並放到double類型變量d中
double dou = sc.nextDouble();
//將double類型數據輸出
System.out.println(dou);
}
}
if 條件判斷
import java.util.Scanner;
public class ScoreDemo{
public static void main(String[] args){
Scanner scanner =new Scanner(System.in);
//輸出提示信息
System.out.println("請輸入您的身高(cm)");
double height = scanner.nextDouble();
height=height/100;
System.out.println("請輸入您的體重斤)");
double weight = scanner.nextDouble();
weight= weight/2;
// 計算體質指數
// BMI=體重 ➗ 身高²
double bmi = weight/(height*height);
// 匹配bmi健康範圍
if(bmi<18.5){
System.out.println("您的身體健康指數爲:"+bmi+"您有點偏瘦了,需要多吃飯");
}else if(bmi>=18.5 && bmi<24){
System.out.println("您的身體健康指數爲:"+bmi+"您健康狀況良好");
}else if(bmi>=24 && bmi<28){
System.out.println("您的身體健康指數爲:"+bmi+"您有些偏胖了,需要減肥呢!");
}else{
System.out.println("您的身體健康指數爲:"+bmi+"您的身體狀況報表,亟待拯救!");
}
}
}
while 循環
import java.util.Scanner;
public class Demo{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
//輸出提示信息
System.out.println("輸入一個整數");
//從鍵盤輸入一個整型數據存儲到變量n中
int n = sc.nextInt();
//輸出提示信息
System.out.println("循環輸出1"+n+"的整數");
//編寫初始化語句,定義一個整型變量i,值爲1
int i = 1;
//使用循環輸出1到n的值
while(i<=n){
System.out.println(i);
i++;
}
}
}
隨機數
隨機數案例
import java.util.Scanner;
public class MenuPrint{
public static void main(String[] args){
//使用輸出語句輸出菜單
double d= Math.random();
System.out.println(d); //[0,1)
double dou= (int)(Math.random()*10)+1;
System.out.println(dou); //[1,10]
數組
數組需要初始化
- 動態初始化
- 靜態初始化
public class Demo {
public static void main(String[] args) {
//創建一個長度爲5的字符型一維數組a
char[] a = new char[5];
//爲數組c的第3個元素賦值爲'C'
a[2]='C';
//輸出第3個元素的值
System.out.println(a[2]);
//用靜態初始化方式創建一個整型數組b,值爲1,2,3,4
char[] b={'1','2','3','4'};
//輸出數組b的長度
System.out.println(b.length);
//輸出數組b的第2個元素
System.out.println(b[2]);
}
}
評分系統練習
package Char_type;
import java.util.Scanner;
public class HelloImooc {
public static void main(String[] args) {
評分系統
// 1.使用數組存儲正確的答案
char[] answer={'A','B','C','D'};
// 2.存儲我們錄入的答案
char[] youAn = new char[answer.length];
Scanner sc = new Scanner(System.in);
int number=0;
for (int i = 0;i< answer.length;i++) {
// 3.創建鍵盤錄入
System.out.println("請輸入您的答案...第"+(i+1)+"題");
// A --"A"
// A -- 'A'
// tochararry A--->char{'A'}
char chars = sc.next().toCharArray()[0];
// 4.存儲我們鍵盤錄入答案
youAn[i] = chars;
if (youAn[i] == answer[i]){
number++;
}
}
System.out.println("答對個數:"+number+"; 得分是:"+number*2);
}
}
5人成績練習
package class_five_scores;
import java.util.Scanner;
public class Averagescore {
public static void main(String[] args) {
// 評分系統
Scanner sc = new Scanner(System.in);
// 1.定義一個長度爲5的double類型的數組score,用於存儲成績
double[] scores=new double[5];
// 2.定義整型變量n,用於統計個數,值爲1
int n=0;
// 3.定義整型變量num,用於統計大於90分的成績,值爲0
int num =0;
// 4、定義double類型變量sum,用於統計成績的和,值爲0.0
double sum = 0.0;
// 5、使用for循環,從鍵盤接收數據爲數組元素賦值,並進行成績和大於90分的人數的統計。
for(int i = 0;i< scores.length;i++){
System.out.println("請輸入第"+(i+1)+"題的成績");
double cool= sc.nextDouble();
scores[i]=cool;
if (cool>90){
num++;
}
sum = sum+cool;
n ++;
}
System.out.println("平均分數;"+sum);
System.out.println("成績大於90分人數:"+num);
System.out.println("平均分數;"+sum/n);
}
}
自增自減自乘除餘
public class HelloWorld{
public static void main(String[] args) {
int one = 10 ;
int two = 20 ;
int three = one+two ;
System.out.println(three);
three += one;
System.out.println(three);
three -= one;
System.out.println(three);
three *= one;
System.out.println(three);
three/=one;
System.out.println(three);
three%=one;
System.out.println(three);
}
}
public class HelloWorld{
public static void main(String[] args) {
int a=16;
double b=9.5;
String str1="hello";
String str2="imooc";
System.out.println("a等於b:" + (a==b));
System.out.println("a大於b:" + (a>b));
System.out.println("a小於等於b:" + (a<=b));
System.out.println("str1等於str2:" + (str1==str2));
}
}
邏輯語句
public class HelloWorld {
public static void main(String[] args) {
boolean a = true; // a同意
boolean b = false; // b反對
boolean c = false; // c反對
boolean d = true; // d同意
System.out.println((a && b)+"未通過");
System.out.println((a || b)+"通過");
System.out.println((!a)+"未通過");
System.out.println((c ^ d)+"通過");
}
}
條件運算符
public class HelloWorld{
public static void main(String[] args) {
int score=68;
String mark =(score >= 60)? "及格" : "不及格";
System.out.println("考試成績如何:"+mark);
}
}
case 的用法
public class HelloWorld {
public static void main(String[] args) {
char today='日';
switch(today){
case '一':
case '三':
case '五':
System.out.println("吃包子");
break;
case '二':
case '四':
case '六':
System.out.println("吃油條");
break;
case '日':
System.out.println("吃主席套餐");
break;
}
}
}
do while語句
public class HelloWorld {
public static void main(String[] args) {
int sum = 0; // 保存 1-50 之間偶數的和
int num = 2; // 代表 1-50 之間的偶數
do {
//實現累加求和
sum += num;
num = num + 2; // 每執行一次將數值加2,以進行下次循環條件判斷
} while (num<=50); // 滿足數值在 1-50 之間時重複執行循環
System.out.println(" 50以內的偶數之和爲:" + sum );
}
}
continue用法
public class HelloWorld {
public static void main(String[] args) {
int sum = 0; // 保存累加值
for (int i = 1; i <= 10; i++) {
// 如果i爲奇數,結束本次循環,進行下一次循環
if ( i%2!=0 ) {
continue;
}
sum = sum + i;
}
System.out.print("1到10之間的所有偶數的和爲:" + sum);
}
}
2層循環打印三角形
public class HelloWorld {
public static void main(String[] args) {
System.out.println("打印直角三角形");
// 外層循環控制行數
for (int i = 1; i<=3; i+=1 ) {
// 內層循環控制每行的*號數
// 內層循環變量的最大值和外層循環變量的值相等
for (int j = 1; j<=i;j+=1 ) {
System.out.print("*");
}
// 每打印完一行後進行換行
System.out.println();
}
}
}
列表最大、最小、均值
public class HelloWorld {
public static void main(String[] args) {
// 定義一個整型數組,並賦初值
int[] nums = new int[] { 61, 23, 4, 74, 13, 148, 20 };
int max = nums[0]; // 假定最大值爲數組中的第一個元素
int min = nums[0]; // 假定最小值爲數組中的第一個元素
double sum = 0;// 累加值
double avg = 0;// 平均值
for (int i = 0; i < nums.length; i++) { // 循環遍歷數組中的元素
// 如果當前值大於max,則替換max的值
if(nums[i]>max){
max=nums[i];
}
// 如果當前值小於min,則替換min的值
else if (nums[i]<min){
min=nums[i];
}
// 累加求和
sum =+nums[i];
}
// 求平均值
avg=sum/nums.length;
System.out.println("數組中的最大值:" + max);
System.out.println("數組中的最小值:" + min);
System.out.println("數組中的平均值:" + avg);
}
}
排序 + for-each案例
import java.util.Arrays;
public class HelloWorld {
public static void main(String[] args) {
// 定義一個整型數組,保存成績信息
int[] scores = { 89, 72, 64, 58, 93 };
// 對Arrays類對數組進行排序
Arrays.sort(scores);
// 使用foreach遍歷輸出數組中的元素
for ( int score : scores ) {
System.out.println(score);
}
}
}
定義兩行三列數組,並分別打印
public class HelloWorld {
public static void main(String[] args) {
// 定義兩行三列的二維數組並賦值
String[][] names={{"tom","jack","mike"},{"zhangsan","lisi","wangwu"}};
// 通過二重循環輸出二維數組中元素的值
for (int i = 0; i < names.length ; i++) {
for (int j = 0; j < names[i].length; j++) {
System.out.println( names[i][j] );
}
System.out.println();
}
}
}