day4-小白學習JAVA---開發軟件_Scanner鍵盤錄入_Random隨機數_流程控制語句

開發軟件_Scanner鍵盤錄入_Random隨機數_流程控制語句

  • 一、開發軟件idea(MAC版)
    • 1、軟件安裝-安裝社區版
    • 2、中英文設置
    • 3、保存時格式化配置
    • 4、注釋和代碼對不齊
    • 5、idea快捷鍵
  • 二、鍵盤錄入--Scanner
    • 1、next和nextInt
    • 2、next和nextLine區別
  • 三、Random隨機數
    • 1、使用
    • 2、隨機范圍
  • 四、流程控制語句
    • 1、switch語句
      • 1、基本使用
      • 2、case穿透性
      • 3、執行語句重復時
    • 2、if語句
      • 1、if格式
      • 2、if else格式
      • 3、if else if else格式
    • 3、for循環語句
      • 練習1
      • 練習2
      • 練習3
    • 4、while循環語句
    • 5、do....while循環語句
    • 6、循環控制關鍵字
    • 7、死循環
    • 8、嵌套循環
      • 練習1
    • 綜合練習

一、開發軟件idea(MAC版)

1、軟件安裝-安裝社區版

idea社區版(免費)
在這里插入圖片描述

2、中英文設置

在這里插入圖片描述
在這里插入圖片描述

3、保存時格式化配置

在這里插入圖片描述

4、注釋和代碼對不齊

在這里插入圖片描述

解決方法

設置-Editor-Code Style- Java-Code Generation

設置-Editor-Code Style- XML-Code Generation

在這里插入圖片描述
在這里插入圖片描述

5、idea快捷鍵

快捷鍵功能
Alt+Enter導入包,自動修正代碼(重中之重)
Ctrl+Y刪除光標所在行
Ctrl+D復制光標所在行的內容,插入光標位置下面
Ctrl+Alt+L格式化代碼
Ctrl+/單行注釋
Ctrl+Shift+/選中代碼注釋,多行注釋,再按取消注釋
Alt+Shift+上下箭頭移動當前代碼行

二、鍵盤錄入–Scanner

1、概述:是java定義好的一個類
2、作用:將數據通過鍵盤錄入的形式放到代碼中參與運行
3、位置:java.util

1、next和nextInt

變量名.nextInt() 輸入整數int型的
變量名.next() 輸入字符串 String型的

 public static void main(String[] args) {// 創建對象Scanner sc = new Scanner(System.in);// 整數intint detal = sc.nextInt();System.out.println("detal = " + detal);//        字符串String data2 = sc.next();System.out.println("data2 = " + data2);}
}

2、next和nextLine區別

變量名.next():錄入字符串 -> 遇到空格和回車就結束錄入了
變量名.nextLine():錄入字符串 -> 遇到回車就結束錄入了public class Demo03Scanner {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String data =  sc.next();System.out.println("data = " + data);String data1 = sc.nextLine();System.out.println("data1 = " + data1);}
}

在這里插入圖片描述

三、Random隨機數

1、使用

1、創建對象?	Random 變量名 = new Random()2、調用方法,生成隨機數?	變量名.nextInt().  ---->int的取值范圍內隨機一個整數public class Demo01 {public static void main(String[] args) {//    創建對象Random rd = new Random();int data = rd.nextInt();System.out.println("data = " + data);}
}

2、隨機范圍

public class Demo01 {public static void main(String[] args) {//    創建對象Random rd = new Random();/**指定隨機數nextInt(int bound)  0-(bound-1)a.nextInt(10) -> 0-9b.在1-10之間隨機一個數: nextInt(10)+1 -> (0-9)+1 -> 1-10c.在1-100之間隨機一個數:nextInt(100)+1 -> (0-99)+1 -> 1-100d.在100-999之間隨機一個數: nextInt(900)+100 -> (0-899)+100 -> 100-999*/ int data = rd.nextInt(10)+1;System.out.println("data = " + data);}
}

四、流程控制語句

1、switch語句

1、基本使用

switch能匹配的數據類型: byte short int char 枚舉類型 String類型格式: switch(變量){case 常量值1:執行語句1;break;case 常量值2:執行語句2;break;case 常量值3:執行語句3;break;case 常量值4:執行語句4;break;...default:執行語句n;break;}
public class Demo01 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("請輸入一個整數");int data = sc.nextInt();switch (data) {case 1:System.out.println("學習Java第一天");break;case 2:System.out.println("學習Java第二天");break;case 3:System.out.println("學習Java第三天");break;case 4:System.out.println("學習Java第四天");break;default:System.out.println("學習Java第N天");break;}}
}

在這里插入圖片描述

2、case穿透性

如果沒有break,就會出現case的穿透性,程序就一直往下穿透執行,直到遇到了break或者switch代碼執行完畢了,就停止了public class Demo01 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("請輸入一個整數");int data = sc.nextInt();switch (data) {case 1:System.out.println("學習Java第一天");case 2:System.out.println("學習Java第二天");case 3:System.out.println("學習Java第三天");case 4:System.out.println("學習Java第四天");break;default:System.out.println("學習Java第N天");break;}}
}

在這里插入圖片描述

3、執行語句重復時

public class Demo02 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("請輸入一個整數");int month = sc.nextInt();switch(month){case 12:case 1:case 2:System.out.println("冬季");break;case 3:case 4:case 5:System.out.println("春季");break;case 6:case 7:case 8:System.out.println("夏季");break;case 9:case 10:case 11:System.out.println("秋季");break;default:System.out.println("什么情況,你家有這個月份?");}}
}

2、if語句

1、if格式

if(boolean表達式){執行語句;
}public class Demo01 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int data1 = sc.nextInt();int data2 = sc.nextInt();if(data1==data2){System.out.println("兩個數相等");}}
}

2、if else格式

public class Demo02 {public static void main(String[] args) {//    任意給出一個整數,請用程序實現盤算該整數是奇數還是偶數,并在控制臺輸出該整數是奇數還是偶數Scanner sc = new Scanner(System.in);int data = sc.nextInt();if(data/2==0){System.out.println("這個整數是偶數 " + data);}else{System.out.println("這個整數是奇數 " + data);}}
}

3、if else if else格式

if(boolean表達式){執行語句1}else if(boolean表達式){執行語句2}else if(boolean表達式){執行語句3}...else{執行語句n}public class Demo08ElseIf {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int data1 = sc.nextInt();int data2 = sc.nextInt();if (data1>data2){System.out.println("data1大于data2");}else if(data1<data2){System.out.println("data1小于data2");}else (data1==data2){System.out.println("data1等于data2");}}
}

3、for循環語句

1.格式:for(初始化變量;比較;步進表達式){循環語句 -> 哪段代碼循環執行,就將哪段代碼放到此處}2.執行流程:a.先走初始化變量b.比較,如果是true,走循環語句,走步進表達式(初始化的變量的值進行變化) c.再比較,如果還是true,繼續走循環語句,走步進表達式d.再比較,直到比較為false,循環結束了
public class Demo01 {public static void main(String[] args) {for (int i = 0; i < 7; i++) {System.out.println("今天是學習Java的第"+i+"天");}}
}

在這里插入圖片描述

練習1

// 求1-3之間的數據和,并把求和結果輸出public class Demo02 {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 3; i++) {sum+=i;}System.out.println("sum = " + sum);}
}

練習2

  // 求出1-100的偶數和public class Demo02 {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {if(i%2==0){sum+=i;}}System.out.println("sum = " + sum);}
}

練習3

//統計1-100之間的偶數個數public class Demo02 {public static void main(String[] args) {int sum = 0;for (int i = 0; i < 100; i++) {if(i%2==0){sum+=1;}}System.out.println("num = " + sum);}
}

4、while循環語句

while(比較){循環語句;步進表達式}public class Demo01 {public static void main(String[] args) {int i = 0;while (i<5){System.out.println("今天學習Java");i++;}}
}
練習:世界最高山峰是珠穆朗瑪峰(8844.43=8844430毫米),假如我有一張足夠大的紙,它的厚度是0.1毫米。請問,我折疊多少次,可以折成珠穆朗瑪峰的高度?public class Demo01 {public static void main(String[] args) {//    1、定義一個變量表示山峰。mountionint mountion = 8844430;//    2、定義一個變量表示紙的厚度  paperdouble papaer = 0.1;//    3、定義一個變量表示折紙的次數。countint count = 0;//    利用while循環比較,如果paper<mountion,就循環對折while(papaer<mountion){papaer*=2;count++;}System.out.println("count = " + count);}
}

5、do…while循環語句

1.格式:初始化變量;do{循環語句;步進表達式}while(比較);2.執行流程:a.初始化變量b.走循環語句c.走步進表達式d.判斷,如果是true,繼續循環,直到比較為false,循環結束3.特點:至少循環一次
public class Demo01DoWhile {public static void main(String[] args) {int i = 0;do{System.out.println("我愛java");i++;}while(i<5);}
}

6、循環控制關鍵字

1.break:a.switch中代表結束switch語句b.在循環中代表結束循環 2.continue:結束當前本次循環,直接進入下一次循環,直到條件為false為止
public class Demo03Scanner {public static void main(String[] args) {for (int i = 0; i < 5; i++) {if (i == 3) {//結束循環//break;//    結束本次循環continue;}System.out.println("今天是學習Java的第" + i + "天");}}
}

在這里插入圖片描述
在這里插入圖片描述

7、死循環

比較條件一直為true

8、嵌套循環

1.概述:循環中還有循環
2.執行流程:
先執行外層循環,再進入內層循環,內層循環就一直循環,直到內層循環結束,外層循環進入下一次循環,直到外層循環都結束了,整體結束

練習1

// 打印直角三角形public class Demo03Scanner {public static void main(String[] args) {for (int j = 1; j < 5; j++) {for (int i = 0; i < j; i++) {System.out.print("* ");}System.out.println();}}
}* 
* * 
* * * 
* * * * 

綜合練習

1.創建ScannerRandom對象
2.調用Random中的nextInt(100)+11-100之間隨機一個數  rdNumber
3.調用Scanner中的nextInt()方法 鍵盤錄入一個要猜的數   scNumber
4.如果scNumber大于rdNumber,證明猜大了
5.如果scNumber小于rdNumber,證明猜小了
6.如果scNumber等于rdNumber,證明猜中了
public class Demo01Exam {public static void main(String[] args) {//1.創建Scanner和Random對象Scanner sc = new Scanner(System.in);Random rd = new Random();//2.調用Random中的nextInt(100)+1在1-100之間隨機一個數  rdNumberint rdNumber = rd.nextInt(100) + 1;while(true){//3.調用Scanner中的nextInt()方法 鍵盤錄入一個要猜的數   scNumberSystem.out.println("請您猜一個數:");int scNumber = sc.nextInt();//4.如果scNumber大于rdNumber,證明猜大了if (scNumber>rdNumber){System.out.println("對不起,您猜大了!");}else if (scNumber<rdNumber){//5.如果scNumber小于rdNumber,證明猜小了System.out.println("對不起,您猜小了!");}else{//6.如果scNumber等于rdNumber,證明猜中了System.out.println("恭喜您,猜中了!");break;}}}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/77932.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/77932.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/77932.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL基本查詢與數據操作全面解析

目錄 1. CRUD操作概述 2. Create操作詳解 2.1 表的創建 2.2 單行數據插入 2.3 多行數據插入 2.4 插入沖突處理 3. Retrieve操作詳解 3.1 基礎查詢 全列查詢&#xff08;慎用&#xff09; 指定列查詢 表達式查詢 結果去重 3.2 條件查詢&#xff08;WHERE子句&#…

01.Python代碼Pandas是什么?pandas的簡介

01.Python代碼Pandas是什么&#xff1f;pandas的簡介 提示&#xff1a;幫幫志會陸續更新非常多的IT技術知識&#xff0c;希望分享的內容對您有用。本章分享的是pandas的使用語法。前后每一小節的內容是存在的有&#xff1a;學習and理解的關聯性&#xff0c;希望對您有用~ pyth…

(8)ECMAScript語法詳解

本系列教程目錄&#xff1a;Vue3Element Plus全套學習筆記-目錄大綱 文章目錄 第2章 ECMAScript2.1 ECMAScript 的發展歷史2.2 什么是ES62.3 ES6語法新特性2.3.1 變量聲明let2.3.2 常量聲明2.3.3 模板字符串2.3.4 函數默認參數2.3.5 箭頭函數2.3.6 對象初始化簡寫2.3.7 解構2.3…

Android JNI開發中頭文件引入的常見問題與解決方案?,提示:file not found

Android JNI開發中頭文件引入的常見問題與解決方案 問題場景&#xff08;新手易犯錯誤&#xff09; 假設你在開發一個JNI項目&#xff0c;想要實現一個線程安全的隊列&#xff08;SafeQueue&#xff09;&#xff0c;于是直接在cpp目錄下創建了safe_queue.h文件&#xff0c;并開…

C++靜態與動態聯編區別解析

在 C++ 中,靜態聯編(Static Binding)和動態聯編(Dynamic Binding)是兩種不同的函數調用綁定機制,核心區別在于確定函數調用的時機和多態性的支持。以下是詳細解釋: 1. 靜態聯編(Static Binding) 定義:在編譯階段確定函數調用與具體實現的關系。特點: 由編譯器直接確…

如何批量為多個 Word 文檔添加水印保護

在日常辦公中&#xff0c;Word文檔添加水印是一項重要的操作&#xff0c;特別是在需要保護文件內容的安全性和版權時。雖然Office自帶了添加水印的功能&#xff0c;但當需要一次性給多個Word文檔添加水印時&#xff0c;手動操作顯得非常繁瑣且低效。為了提高效率&#xff0c;可…

【愚公系列】《Python網絡爬蟲從入門到精通》057-分布式爬取中文日報新聞數據

&#x1f31f;【技術大咖愚公搬代碼&#xff1a;全棧專家的成長之路&#xff0c;你關注的寶藏博主在這里&#xff01;】&#x1f31f; &#x1f4e3;開發者圈持續輸出高質量干貨的"愚公精神"踐行者——全網百萬開發者都在追更的頂級技術博主&#xff01; &#x1f…

Linux系統編程 day9 SIGCHLD and 線程

SIGCHLD信號 只要子進程信號發生改變&#xff0c;就會產生SIGCHLD信號。 借助SIGCHLD信號回收子進程 回收子進程只跟父進程有關。如果不使用循環回收多個子進程&#xff0c;會產生多個僵尸進程&#xff0c;原因是因為這個信號不會循環等待。 #include<stdio.h> #incl…

微信小程序拖拽排序有效果圖

效果圖 .wxml <view class"container" style"--w:{{w}}px;" wx:if"{{location.length}}"><view class"container-item" wx:for"{{list}}" wx:key"index" data-index"{{index}}"style"--…

hadoop三大組件的結構及各自的作用

1 HDFS 1.1功能 HDFS 是 Hadoop 的分布式文件系統&#xff0c;用于存儲和管理海量數據。它具有高容錯性、高吞吐量和可擴展性&#xff0c;能夠在多個節點上存儲和管理大規模數據 1.2架構&#xff1a;采用主從架構&#xff0c;由一個 NameNode 和多個 DataNode 組成。NameNode…

解決jupyter notebook修改路徑下沒有c.NotebookApp.notebook_dir【建議收藏】

文章目錄 一、檢查并解決問題二、重新設置默認路徑創作不易&#xff0c;感謝未來首富們的支持與關注&#xff01; 最近在用jupyter notebook編寫代碼時&#xff0c;更新了一下Scikit-learn的版本&#xff0c;然后重新打開jupyter notebook的時候&#xff0c;我傻眼了&#xff0…

MCP Host、MCP Client、MCP Server全流程實戰

目錄 準備工作 MCP Server 實現 調試工作 MCP Client 實現 MCP Host 配置 第一步:配置支持 function calling的 LLM 第二步:添加MCP Server 一般有兩種方式,第一種json配置,第二種直接是Command形式,我這里采用Command形式 第三步:使用MCP Server 準備工作 安裝…

4.21—4.22學習總結 JavaWeb:HTML-CSS

Web&#xff1a;能夠通過瀏覽器訪問到的網站。 Web標準&#xff1a; HTML&#xff1a; vscode中進行注釋的快捷鍵為ctrl斜線/ h1的字體最大&#xff0c;依次遞減&#xff0c;只存在h1—h6。 超鏈接&#xff1a; 設置字體顏色&#xff1a; 方式三寫一個css文件&#xff0c;將方…

Kaamel Agent: 基于EU AI Act的AI影響評估(AIIA)

1. 引言&#xff1a;安全視角下的AI監管 隨著人工智能技術的快速發展和廣泛應用&#xff0c;AI系統在為社會帶來創新和效率的同時&#xff0c;也引發了諸多關于安全、隱私和合規的擔憂。在這一背景下&#xff0c;全球范圍內涌現出多種監管框架和標準&#xff0c;旨在確保AI系統…

Mongodb分布式文件存儲數據庫

文章目錄 一、MongoDB 簡介基本信息特點內部組件 二、MongoDB 部署1. 安裝依賴2. 解壓部署并配置環境變量3. 修改配置文件以及啟動服務4.數據庫權限管理 三、MongoDB 管理1. 角色權限2. 操作命令用戶管理命令常用命令&#xff08;Mongo4.2.8&#xff09;數據庫相關用戶相關集合…

麒麟V10安裝MySQL8.4

1、下載安裝包 wget https://cdn.mysql.com//Downloads/MySQL-8.4/mysql-8.4.5-1.el7.x86_64.rpm-bundle.tar2、解壓 mkdir -p /opt/mysql tar -xvf mysql-8.4.5-1.el7.x86_64.rpm-bundle.tar -C /opt/mysql3、安裝MySQL 3.1、卸載mariadb rpm -qa | grep mariadb rpm -e m…

Unreal如何使用后處理材質實現一個黑屏漸變效果

文章目錄 前言相機后期處理材質創建材質相機設置動態修改FadeAlpha參數使用示例最后前言 UE5 開發VR ,如何通過PostProcess輕松實現黑屏漸變效果 最簡單的辦法,其實是使用一個半球形模型,遮擋住相機,然后控制這個半球形遮罩的顏色透明度,至少Unity中默認的Tunneling是這么…

其它生成式(對比列表生成式)

一、字典生成式&#xff1a; # keys[name, age, gender] # dic{key:None for key in keys} # print(dic) items[(name, Tom), (age, 18), (gender, male)] res{k:v for k,v in items if k ! gender} print(res) 二、集合生成式&#xff1a; keys[name, age, gender] set1{ke…

健身房管理系統(springboot+ssm+vue+mysql)含運行文檔

健身房管理系統(springbootssmvuemysql)含運行文檔 健身房管理系統是一個全面的解決方案&#xff0c;旨在幫助健身房高效管理其運營。系統提供多種功能模塊&#xff0c;包括會員管理、員工管理、會員卡管理、教練信息管理、解聘管理、健身項目管理、指導項目管理、健身器材管理…

LeetCode 第 262 題全解析:從 SQL 到 Swift 的數據分析實戰

文章目錄 摘要描述題解答案&#xff08;SQL&#xff09;Swift 題解代碼分析代碼示例&#xff08;可運行 Demo&#xff09;示例測試及結果時間復雜度分析空間復雜度分析總結未來展望 摘要 在實際業務中&#xff0c;打車平臺要監控行程的取消率&#xff0c;及時識別服務質量的問…